诚如前面一篇文章,是简单的布置了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
就能查看所有状态的镜像
坑点:
坑点已经填平了,按照上面的步骤,不会错(泪目)
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。