Browse Source

Added documentation for basic golang usage.

Moghedrin 11 years ago
parent
commit
42fcd0595c
2 changed files with 30 additions and 2 deletions
  1. 15 1
      golang/README-content.md
  2. 15 1
      golang/README.md

+ 15 - 1
golang/README-content.md

@@ -10,8 +10,22 @@ Go, also called golang, is a programming language initially developed at Google
 For this image, the most straight-forward use is to use a golang container as both the build environment as well as the runtime environment. In your Dockerfile, you can do something along the lines of the following will compile and run your project.
 
     FROM golang
-    
     ADD . /usr/src/myapp
     WORKDIR /usr/src/myapp
     RUN go build
     CMD ["./myapp"]
+
+Then run and build the docker image.
+
+    docker build -t my-golang-app
+    docker run -it --rm --name my-running-app my-golang-app ./myapp
+
+## Compile your app inside the docker container.
+
+It is not always appropriate to run your app inside a container. In instances where you only want to compile inside the docker instance, you can do something along the lines of the following.
+
+    docker run --rm -v "$(pwd)":/usr/src/myapp -w /usr/src/myapp golang go build
+
+This will add your current directory as a volume to the comtainer, set the working directory to the volume, and run the command `go build` which will tell go to compile the project in the working directory and output the executable to myapp. Alternatively, if you have a make file, you can instead run the make command inside your container.
+
+    docker run --rm -v "$(pwd)":/usr/src/myapp -w /usr/src/myapp make

+ 15 - 1
golang/README.md

@@ -10,12 +10,26 @@ Go, also called golang, is a programming language initially developed at Google
 For this image, the most straight-forward use is to use a golang container as both the build environment as well as the runtime environment. In your Dockerfile, you can do something along the lines of the following will compile and run your project.
 
     FROM golang
-    
     ADD . /usr/src/myapp
     WORKDIR /usr/src/myapp
     RUN go build
     CMD ["./myapp"]
 
+Then run and build the docker image.
+
+    docker build -t my-golang-app
+    docker run -it --rm --name my-running-app my-golang-app ./myapp
+
+## Compile your app inside the docker container.
+
+It is not always appropriate to run your app inside a container. In instances where you only want to compile inside the docker instance, you can do something along the lines of the following.
+
+    docker run --rm -v "$(pwd)":/usr/src/myapp -w /usr/src/myapp golang go build
+
+This will add your current directory as a volume to the comtainer, set the working directory to the volume, and run the command `go build` which will tell go to compile the project in the working directory and output the executable to myapp. Alternatively, if you have a make file, you can instead run the make command inside your container.
+
+    docker run --rm -v "$(pwd)":/usr/src/myapp -w /usr/src/myapp make
+
 # Issues and Contributing
 
 We are always thrilled to receive pull requests, and do our best to process them as fast as possible. Not sure if that typo is worth a pull request? Do it! We will appreciate it.