docker相关网站
1. 新增/修改容器映射端口
目标
- 修改1000:2000为1000:1000
- 新增4000:4000
细节
- hostconfig.json容器运行前后内容一致
- config.v2.json容器运行前后内容不一致,我们要在停止容器前保存好部分数据
- json数据可借助json工具进行格式化和压缩
- 本人用的phpdocker
具体步骤
- 实例
请根据实际情况修改相应位置的数据
> docker run -d --name nginx-test -p 1000:2000 -v 宿机配置目录:虚拟机配置目录 -v 宿机网站目录:虚拟机网站目录 nginx/nginx
- 临时保存config.v2.json部分数据到本地
# 切换到容器配置目录,容器id根据实际情况修改
> cd /var/lib/docker/containers/要修改的容器id
# 临时保存config.v2.json如下部分的内容,后边作替换使用
> cat config.v2.json
数据片段1:
数据片段2:
- 停止对应容器和docker服务
# 停止容器
> docker stop 378f0ca8a3ff
# 停止docker服务
> systemctl stop docker
- 修改hostconfig.json和config.v2.json配置文件
- 如果不在容器目录,则切换
> cd /var/lib/docker/containers/要修改的容器id
- 修改config.v2.json文件,将我们刚才临时保存的 数据片段1、数据片段2 覆盖到相应标签
> vim config.v2.json
- 修改hostconfig.json文件
> vim hostconfig.json
- 启动docker服务和对应容器
> systemctl start docker
> docker start 378f0ca8a3ff
- 查看
可参考文档
Vim中如何全选复制粘贴
通过配置文件修改docker容器端口映射
How do I assign a port mapping to an existing Docker container?
2. 用Docker安装Gitlab
目标
在docker上安装gitlab
细节
gitlab官方要求至少4G内存,我这边安装用的2G内存,有些不大稳定
具体步骤
- 安装gitlab
# 下载gitlab
> docker pull gitlab/gitlab-ce:latest
# 启动gitlab
> docker run -d \
--hostname gitlab.xiaoqult.com \
-p 4321:80 \
--name gitlab \
--restart always \
--volume /root/gitlab/config:/etc/gitlab \
--volume /root/gitlab/logs:/var/log/gitlab \
--volume /root/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest
# 查看启动状态,可能要等几分钟
# 启动中
> [root@1234~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
fb72294f9ed3 gitlab/gitlab-ce:latest "/assets/wrapper" 4 seconds ago Up 3 seconds (health: starting) 22/tcp, 443/tcp, 0.0.0.0:4321->80/tcp gitlab
# 成功启动
[root@1234~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
fb72294f9ed3 gitlab/gitlab-ce:latest "/assets/wrapper" 5 minutes ago Up 5 minutes (healthy) 22/tcp, 443/tcp, 0.0.0.0:4321->80/tcp gitlab
- 访问
gitlab.xiaoqult.com:4321