1、先改Linux服务器映射关系,代理到本地
# 创建映射关系
vi /etc/systemd/system/docker.service.d/http-proxy.conf
# http-proxy.conf文件内,编辑内容如下:
[Service]
Environment="HTTP_PROXY=http://127.0.0.1:7078"
Environment="HTTPS_PROXY=http://127.0.0.1:7078"
# 测试环境服务器http://127.0.0.1:7078
2、本地Windows系统cmd执行该命令
# 这个是Windows系统cmd执行命令。映射端口到test01 去构建镜像,端口为测试环境的端口
ssh -R 127.0.0.1:9999:127.0.0.1:7078 root@test01.byecode.com
# 如果执行过程中网络出现问题,很有可能是防火墙导致的
# 开启防火墙
systemctl daemon-reload
# 重启docker
systemctl restart docker
# 切换到
cd /data/workspace/infra/
#
cd admin-autoTest
#
cat python-test.Dockerfile
#若文件为空,需要用vim python-test.Dockerfile,将代码中的dockerfile文件内容拷贝进来
#
步骤1:构建docker镜像
# 删除容器关联的数据卷
docker rm -v 48af48e681db
# 清除镜像缓存
docker builder prune
# 构建docker镜像
docker build -f python-test.Dockerfile -t byecode-auto-test .
# 构建关联tag
docker tag byecode-auto-test:latest registry.cn-shanghai.aliyuncs.com/lighthousev1/byecode-auto-test:v1
# 推送到阿里云镜像仓库
docker push registry.cn-shanghai.aliyuncs.com/lighthousev1/byecode-auto-test:v1
===============================================================
步骤2:运行docker容器
# 映射宿主机端口到容器端口(格式:宿主机端口:容器端口)
docker run -d -p 8811:8811 --name your-container-name your-image-name:tag
--name 指定容器名称
-p 8811:8811 将宿主机的 8811 端口映射到容器的 8811 端口(按需修改宿主机端口)
-d 表示后台运行
步骤3:验证容器状态
# 查看正在运行的容器
docker ps
# 查看容器日志(排查启动问题)
docker logs your-container-name
步骤4:调试容器
# 进入容器内的交互式 Shell
docker exec -it your-container-name /bin/bash
# 在容器内检查文件、依赖和环境
ls -l /app # 确认文件已复制
pip list # 检查依赖是否安装成功
步骤5:数据持久化(如果需要)
如果应用需要保存数据(如数据库、上传文件等),使用 卷挂载:
docker run -d \
-p 8811:8811 \
-v /host/path/data:/app/data \
--name your-container-name \
your-image-name:tag
步骤6、其他常用命令
# 停止容器
docker stop your-container-name
# 启动已停止的容器
docker start your-container-name
# 删除容器
docker rm your-container-name
# 删除镜像
docker rmi your-image-name:tag