Docker的安装与基础配置
- 选择国内源进行安装
清华大学docker源及其安装方法 - 查看是否安装成功
docker --version # Docker version 20.10.7, build f0df350
- 指定docker镜像的加速源
- 登录阿里云-控制台,其他平台也可以(没测试)
-
在左侧搜索容器,找到容器镜像服务
-
点击容器镜像服务,选择镜像工具 -> 镜像加速器
在终端执行以下命令
sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://u15jfydi.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
- 查看是否切换镜像安装源
cd /etc/docker ls # 看到生成 deaemon.json 文件,查看文件可以看到是阿里镜像源
在docker中安装gitlab
- 首先拉去gitlab的镜像源(树莓派要使用arm的源)
docker pull gitlab/gitlab-ce # docker pull bboysoul/gitlab:12.9.0-ce.0-rpi arm版本
- 在
/etc/docker
目录下创建gitlab
文件夹 - 设置gitlab文件夹的全局路径,这样可以使用
$GITLAB_HOME
代替如下路径export GITLAB_HOME=/etc/docker/gitlab
- 分别在gitlab文件夹下创建如下三个文件夹
sudo mkdir $GITLAB_HOME/config # 配置 sudo mkdir $GITLAB_HOME/data # 数据 sudo mkdir $GITLAB_HOME/logs # 日志
- 使用docker来运行gitlab,命令如下:
docker run --detach \ # 在后台运行 --hostname gitlab.example.com \ # 映射的域名,没有就直接ip访问 --publish 9443:443 --publish 9080:80 --publish 9022:22 \ # docker环境的端口与物理服务器的端口映射 --name gitlab \ # 容器的名称 --restart always \ # 开机自启 --volume $GITLAB_HOME/config:/etc/gitlab \ #容器数据与物理服务器文件数据映射 --volume $GITLAB_HOME/logs:/var/log/gitlab \ --volume $GITLAB_HOME/data:/var/opt/gitlab \ bboysoul/gitlab:12.9.0-ce.0-rpi # 新建run.sh,将上面的脚本写入 # 运行脚本启动gitlab sudo bash run.sh
- 启动后使用
sudo docker ps
查看运行任务
-htop
命令查看运行情况
-
sudo docker logs -f gitlab
查看启动日志 - 树莓派安全关机
sudo poweroff
在docker中安装gitlab-runner
- 使用docker安装gitlab-runner镜像,树莓派要安装arm版本
docker pull gitlab/gitlab-runner # docker pull klud/gitlab-runner # arm版本
- 注册gitlab-runner,比较重要的是token和url,可以在运行的gitlab项目设置中找到
sudo docker run --rm -v /srv/gitlab-runner/config:/etc/gitlab-runner klud/gitlab-runner register \ --non-interactive \ --executor "docker" \ --docker-image alpine:latest \ --url "http://192.168.0.107:9080" \ # gitlab运行的地址 --registration-token "pVvFs4CKPNds1DsCzWtc" \ # gitlab中的key --description "first-register-runner" \ --tag-list "test-cicd,docker-cicd" \ # 自定义的runner名称 --run-untagged="true" \ --locked="false" \ --access-level="not_protected"
- 运行gitlab-runner
sudo docker run -d --name gitlab-runner --restart always \ -v /srv/gitlab-runner/config:/etc/gitlab-runner \ -v /var/run/docker.sock:/var/run/docker.sock \ klud/gitlab-runner