宁可枝头抱香死,何曾吹落北风中。这篇文章主要讲述基于ansible在远程centos服务器docker环境安装docker-gogs相关的知识,希望能为你提供帮助。
本文档主要介绍如何使用ansible在远程centos服务器docker环境快速安装gogs,目标服务器为一台阿里云ECS,安装操作系统为阿里云提供的公共镜像Centos7.9-64。且已经预装docker环境。
准备
硬件
- 一台阿里云ECS:1c2g40g
- 预装docker环境 参考 基于ansible在centos服务器安装docker
- 一台可以连接阿里云的linux服务器,预装ansible、git和,其中ansible版本为2.9.27
服务器类型 | OS | 公网IP | 内网IP | 备注 |
---|---|---|---|---|
目标服务器 | Centos7.9(阿里云自带的公共镜像) | 123.23.12.21 | 10.0.1.121 | 阿里云ECS(root/root1234) |
主控端 | Centos7.9 | ? | 10.0.1.123 | 本地LInux服务器 |
指ssh到主控端,然后通过ansible将gogs容器在目标服务器上启动并运行。
安装python3目标服务器安装的Centos7.9操作系统默认安装的python版本比较低,其实并不支持ansible的docker容器相关指令;这里我们需要先在目标服务器远程安装一个高版本的python,后续再通过指定python路径的方式去执行ansible脚本就可以成功操作docker容器了。
前面一个步骤中下载的脚本目前是把python3编译安装在/usr/soft/python3目录下,后续启动docker容器均需要指定ansible_python_interpreter为/usr/soft/python3。
另外要注意一下主控端的ansible版本号,本实践使用的ansible版本为2.9.27,如果ansible版本过低可能会导致基于本实践的安装python3失败。
[root@localhost ~]# git clone https://gitee.com/pi4k8s/ansible-exmaples.git
[root@localhost ~]# cd ansible-exmaples/aliyun-centos7.9/
[root@localhost aliyun-centos7.9]#
# 修改该目录下的hosts文件,修改里面的服务器为自有服务器信息
[root@localhost aliyun-centos7.9]# ANSIBLE_HOST_KEY_CHECKING=false sh install-python.sh myhostPLAY [myhost] ******************************************************************TASK [Gathering Facts] *********************************************************
ok: [myhost]TASK [python3 : install required packages] *************************************
changed: [myhost]TASK [python3 : get python sources] ********************************************
changed: [myhost]TASK [remove python3] **********************************************************
ok: [myhost]TASK [remove python3-compile] **************************************************
ok: [myhost]TASK [cp python3] **************************************************************
changed: [myhost]TASK [compile python3] *********************************************************
changed: [myhost]TASK [install python3] *********************************************************
changed: [myhost]TASK [python3 : install pip docker-py] *****************************************
changed: [myhost]PLAY RECAP *********************************************************************
myhost: ok=9changed=6unreachable=0failed=0skipped=0rescued=0ignored=0
验证
[root@localhost aliyun-centos7.9]# ansible -m shell -a /usr/soft/python3/bin/python3 --version -o -i hosts myhost
myhost | CHANGED | rc=0 | (stdout) Python 3.6.13
安装gogs-0.12
[root@localhost ~]# git clone https://gitee.com/cuiyingfeng/jenkins-ansible-examples.git
[root@localhost ~]# cd jenkins-ansible-examples/gogs
# 修改该目录下的hosts文件,修改里面的服务器为自有服务器信息
[root@localhost gogs]# ansible-playbook playbook/install-gogs.yaml -i hosts -e env_hosts=server1 -e GOGS_SSH_HOST=10.0.1.121 -e GOGS_HTTP_PORT=3000 -e GOGS_EXTERNAL_URL=http://10.0.1.121:3000/
验证
【基于ansible在远程centos服务器docker环境安装docker-gogs】可以用浏览器直接访问 \\$GOGS_EXTERNAL_URL(本实践中的访问地址为http://10.0.1.121:3000/),显示如下
文章图片
本实践中的gogs容器启动后,已经内置了管理员用户gogs/gogs1234,可以直接登录。另外该gogs容器关闭了注册功能,可以gogs用户登录后自行增删用户。
推荐阅读
- 设计模式实战-状态模式(State Pattern)
- 路由基础之WAN接入配置和PPP认证
- CentOS/Rocky/AlmaLinux8配置Apache的HTTPS
- 为什么说 JS 是多范式语言()
- 云原生分布式追踪
- CentOS8中恢复根目录为默认权限
- Windows Tips远程桌面出现credSSP 加密Oracle修正 错误
- BZOJ 1090: [SCOI2003]字符串折叠 区间动归
- Windows 11删除正在被程序占用的文件夹