用golang官方Docker镜像运行项目
Posted 程序员欣宸
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用golang官方Docker镜像运行项目相关的知识,希望对你有一定的参考价值。
欢迎访问我的GitHub
两个命令运行hellowrold.go
- 假设文件夹service和hello都在目录 /Users/will/temp/201902/24下;
- 命令行进入目录 /Users/will/temp/201902/24,执行以下命令,即可创建一个Dockerfile文件,用于稍后的镜像制作:
rm -f ./Dockerfile \\
&& tee ./Dockerfile <<-EOF
FROM golang:1.11.5
WORKDIR /go/src
COPY . .
RUN go get -d -v ./...
RUN go install -v ./...
EOF
-
从Dockerfile内容可见,该镜像做的事很简单:先将当前目录下的go源文件夹复制到镜像内,再执行go install命令编译构建,生成可执行文件;
- 执行以下命令,先构建镜像再创建一次性容器,该容器启动后立即运行镜像中构件好的可执行文件:
docker build -t my-golang-app . \\
&& docker run -it --rm --name my-running-app my-golang-app hello
- 输出如下:
$ docker build -t my-golang-app . \\
> && docker run -it --rm --name my-running-app my-golang-app hello
Sending build context to Docker daemon 5.12kB
Step 1/5 : FROM golang:1.11.5
---> 901414995ecd
Step 2/5 : WORKDIR /go/src
---> Using cache
---> 2aa585932b40
Step 3/5 : COPY . .
---> Using cache
---> cfc695390f08
Step 4/5 : RUN go get -d -v ./...
---> Using cache
---> 4c71f0716bac
Step 5/5 : RUN go install -v ./...
---> Using cache
---> 5d950c32c83f
Successfully built 5d950c32c83f
Successfully tagged my-golang-app:latest
abc
-
可见go程序已经正常运行;
- 以上就是在Docker运行golang程序的快捷方式,如果不想配置go环境,可以用此方式快速运行程序;
欢迎关注51CTO博客:程序员欣宸
以上是关于用golang官方Docker镜像运行项目的主要内容,如果未能解决你的问题,请参考以下文章
nginx unit docker 运行以及php &&golang 简单使用
docker安装运行nginxtomcat,springBoot项目用Dockerfile打包镜像到docker运行