杨友山 2019-11-18
诚如前面一篇文章,是简单的布置了golang的一个demo,再次布beego
1、写Dockerfile
# docker build # Version 1.0 FROM centos MAINTAINER yankeys@**.com ENV GOROOT /usr/local/go ENV GOPATH /data/gopath ENV PATH $GOROOT/bin:$PATH ADD go/ /usr/local/go RUN mkdir -p /data/gopath ADD src/ /data/gopath/src ADD pkg/ /data/gopath/pkg WORKDIR /data/gopath/src/lottery RUN cd /data/gopath/src/lottery RUN go build -o server.sh main.go RUN cp /data/gopath/src/lottery/server.sh /usr/bin/server.sh RUN chmod 777 /usr/bin/server.sh ENTRYPOINT /usr/bin/server.sh
注
最后一行不能使用RUN和CMD,不然会将启动日志输出到命令行,加&会导致docker内server.sh未启动(血泪史)
2、创建镜像
docker build -t golang:v1 .
3、创建容器
docker run -itd -p 80:8080 golang:v1 /bin/bash
注
端口号绑定:前面为本机的端口,后面为容器端口
4、查看容器
docker ps
注
此命令后面加上-a
就能查看所有状态的镜像
坑点:
坑点已经填平了,按照上面的步骤,不会错(泪目)