Hi
I think that this is the case that "proper way" means "the one that fits
your needs".
Some solutions you may adopt:
a) (cd /path/to/my/server/directory ; go run main.go) &
b) use absolute pathnames: os.Open("/path/to/my/server/directory/
images/my.png")
c) Load configuration from some file/db
d) command line flags, like:
.
.
.
import "flag"
.
.
.
var pathToMyServerDirectory string
.
.
.
flag.StringVar(&pathToMyServerDirectory,"path",".","Server root directory")
.
.
.
Em segunda-feira, 6 de maio de 2019 19:45:08 UTC-3, [email protected]
escreveu:
>
> I'm learning Go web server programming and have copied the following
> example:
>
>
> func Image(w http.ResponseWriter, r *http.Request) {
> f, _ := os.Open("images/my.png")
> . . .
>
>
> It works fine when I'm starting the Go web server with `go run main.go &`.
> I.e., the file "images/my.png" is related to where I started "go run".
> However, it won't be the case when the Go web server is compiled and
> started the other way.
>
> What's the proper way to make sure it always works, including starting
> from docker container?
>
> THX!
>
>
>
>
>
--
You received this message because you are subscribed to the Google Groups
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/golang-nuts/ddfc81dc-9700-4c44-be9e-fc966aac2c79%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.