一、场景:
二、需求
三、实操
Stage 1:GoLand 中 build 生成二进制文件
Stage 2:编写 Dockerfile
Stage 3:编写 docker-compose.yaml
Stage 4:文件上传到 ubuntu 服务器上,并设置文件读写权限
Stage 5:运行 docker-compose
Stage 6:查看运行效果
四、问题
A. docker + docker-compose 安装
B. 运行docker-compose后,进入go项目入容器报错 Permission denied
一、场景:
开发工具:GoLand 2023.1.4
go项目文件:qingdaoHJ212.go
服务器:ububtu 22
二、需求
使用docker-compose部署qingdao.go
三、实操
Stage 1:GoLand 中 build 生成二进制文件
- 生成 qingdaoHJ212
Stage 2:编写 Dockerfile
FROM alpine:3.12# 解决时区问题
RUN apk add --no-cache tzdataENV TZ Asia/ShanghaiCOPY qingdaoHJ212 .CMD ./qingdaoHJ212
Stage 3:编写 docker-compose.yaml
version: '3.1'services:qingdaohj212:image: qingdaohj212:v2container_name: qingdaohj212-newbuild: .restart: always
Stage 4:文件上传到 ubuntu 服务器上,并设置文件读写权限
# 进入目录
cd /mnt/docker/qingdaoHJ212-new/# 设置文件读写权限
chmod a+x qingdaoHJ212
Stage 5:运行 docker-compose
# 进入目录
cd /mnt/docker/qingdaoHJ212-new/# 运行编排文件
docker-compose up -d --build
Stage 6:查看运行效果
- docker ps
四、问题
A. docker + docker-compose 安装
点击进入
B. 运行docker-compose后,进入go项目入容器报错 Permission denied
- 原因:go二进制文件【qingdaoHJ212】需要设置读写权限
- 解决方案:chmod a+x qingdaoHJ212