docker 添加 portainer 面板和 gitlab 简单记录(阿里云)

1,833 阅读3分钟

前期准备

  • 拥有自己的云服务(部署到本地的话不需要云服务器,云服务器不能太小,本人是两核四G),并掌握一定的linux基础
  • 云服务器操作相关软件(如:FinalShell)

一、安装和配置docker

  • 安装依赖包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2 
  • 设置阿里云镜像源

sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  • 安装 Docker-CE ,请执行一下命令进行安装:
sudo yum install docker-ce
  • 启动 Docker-CE
sudo systemctl enable docker 
sudo systemctl start docker
  • 建立 Docker 用户组
sudo groupadd docker
  • 添加当前用户到 docker 组
sudo usermod -aG docker $USER
  • 配置镜像加速并重启docker
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
  • 拉取微软在 Docker 上的 aspnetcore 镜像(过程中一路y)
docker pull microsoft/aspnetcore
  • 查看是否拉取成功
docker images

image.png

二、添加 Portainer 控制面板

  • 先去阿里云服务器的安全组规则中添加对应的端口规则(此次采用9000端口)

image.png

  • 安装并配置Portainer
docker volume create portainer_data 
docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
  • 访问本人ip+9000端口,打开Portainer界面

image.png

三、添加gitlab

此时可以在FinalShell中通过linux命令去添加,也可以通过Portainer 控制面板去添加

  • 同样的先去阿里云服务器的安全组规则中添加对应的端口规则(此次采用9022、9080、9443端口)
  • 点击Portainer中APP Templates中Gitlab CE的update

image.png

  • 配置如下等关键内容(本人在此主要修改了端口号相关配置,其他配置根据初始化自行调整)

image.png

  • 配置成功以后,在控制面板中重新启动,稍等片刻后再访问ip+9080(根据自己端口自行修改)即可打开gielab首页(本人在访问时曾遇到过出现502页面的问题,查询的问题有提示端口冲突和服务器资源过小的原因,也可能个人重启时访问太早的原因,多等一会就好了)

  • 在FinalShell中通过linux命令去添加的对应关键代码(如果通过Portainer添加后,则不需要这一步

docker run -d \
-p 9443:443 \
-p 9080:80 \
-p 9022:22 \
--name dzp_gitlab \ // 命名
--restart always \ // 总是重新启动
--hostname  120.26.75.xxx \ // 此处是自己的ip地址
-v /home/gitlab/config:/etc/gitlab:Z  \
-v /home/gitlab/logs:/var/log/gitlab:Z  \
-v /home/gitlab/data:/var/opt/gitlab:Z \
gitlab/gitlab-ce
  • 通过ip+9080访问到的页面如下所示:

image.png

  • 此时第一次访问时,以往是初始化管理员密码的页面,但是此处直接就是登录页面,一直以为我初始化的有问题,为此我卸载又重新初始化了一次,依旧如此,最终在其他地方找到了答案:管理员的账号和密码会在初始化的时候生成在服务器/home/gitlab/config/initial_root_password文件中,管理员账号为:root,密码如下如所示:(有24小时的有效期,在登录以后记得修改密码)

image.png

至此,gitlab添加算是完成了

追加:

  • 由于我所使用端口为非默认端口80,因此会导致克隆地址没有端口号问题,因此需要添加端口号配置并重启gitlab;若不重新配置的话,可以在clone的地址中单个添加也可。
  • 后续出现gitlab-ctl 不存在以及git push提交不上去的问题,针对这两个问题,此处参考链接找的解决方案是重新安装gitlab,但是重新借助docker命令安装gitlab以后,本人服务器上gitlab_ctl依旧不存在,且无gitlab_ctl对应文件;但是git push能够推送代码上去了;(gitlab_ctl不存在,个人猜测是服务器内存才4G太小有一定的影响) 上服务器占用情况图示:

image.png