一、前言
有网友问我为什么要使用私服,可能大部分人都不是太懂,网上那么多存储仓库而且好用方便,但是你想过没有如果企业中的项目,放在人家的仓库上这个安全性不是太好,所以说一般企业都会有自己的私服。本章教程结合安装Docker+Mysql5.7+gogs搭建私服,系统采用centos 7,教程基本上很全面,搭建过程中,可能会遇到问题,教大家些技巧,首先把报错复制到百度上看一下,如果实在是找不到问题,翻到此文章最下面。
二、背景介绍

Gogs 是一款类似GitHub的开源文件/代码管理系统(基于Git),Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 Go 语言支持的 所有平台,包括 Linux、Mac OS X、Windows 以及 ARM 平台。
三、安装Docker环境
1.安装docker,由于Docker限制分为两个版本CE和EE,所以之前yum里面的docker是老版本,需要先进行卸载,现在的包名
执行命令:

sudo yum remove docker
docker-common
docker-selinux
docker-engine



图例:


2.安装依赖的库:yum-utils、yum-config-manager、device-mapper-persistent-data、lvm2、devicemapper 注意:安装Docker CE,你能够通过不同的方式来安装DockerCE,取决于你的需要。通过仓库来安装docker,当你在一台新的机器上第一次安装docker之前,你需要去设定一下你的Docker仓库,之后你才能够安装或者更新Docker从仓库中
执行命令:
命令行:sudo yum install -y yum-utils
device-mapper-persistent-data
lvm2图例:


3.使用下列的命令去设置stable仓库,你大部分使用的是stable版本的仓库,不过你想安装编译从edge或者test版本也是没有问题的
执行命令:
sudo yum-config-manager
--add-repo
https://download.docker.com/linux/centos/docker-ce.repo图例:


4.选项:允许edge和test的参控股,他们的仓库资源是包含在docker.repo上面的,文件包含,但是默认配置是能够获取的,你需要用通过命令开启,然后能够和stable版本一起使用
执行命令:
sudo yum-config-manager --enable docker-ce-edge图例:


执行命令:
sudo yum-config-manager --enable docker-ce-test图例:


也能够通过yum-config-manager的命令--disable来开启和关闭对应的edge仓库和test仓库
执行命令:
sudo yum-config-manager --disable docker-ce-edge
5.安装最新版本的Docker CE或者按安装特殊版本
执行命令:
sudo yum install docker-ce图例:


6.启动docker
执行命令:
sudo systemctl start docker图例:


7.查看是否启动成功
执行命令:
systemctl status docker图例:


8.卸载docker 第一步:卸载docker包,第二步:删除你的镜像、容器、磁盘、以及相关的配置文件在你电脑上不会自动删除,通过命令行删除的镜像、容器、文件
sudo yum remove docker-ce
sudo rm -rf /var/lib/docker9.启动关闭Docker命令
1.启动docker,命令:systemctl start docker
2.验证docker是否启动成功,命令:dockers version
3.重启docker,命令:systemctl restart docker
4.关闭docker,命令:systemctl stop docker END
四、Docker 安装mysql
1.查找Mysql的可用镜像
执行命令:
docker search mysql图例:


二、拉取Mysql5.7镜像
执行命令:
docker pull mysql:5.7图例:


3.查看docker 镜像内是否存在Mysql5.7
执行命令:
docker images
图例:


4.启动mysql,--name 是名字随意,后面有启动的mysql密码
执行命令:
docker run -di --name=mymysql -p 13306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
5.查看mysql 是否启动成功
执行名命令:
docker ps -l
图例:


五、Docker安装gogs
1.拉取gogs镜像:
执行命令:
docker pull gogs/gogs
图例:


2.查看是否拉取成功
执行命令:
docker images
图例:


3.创建物理目录:
执行命令:
mkdir -p /var/gogs
图例:


4.启动gogs
执行命令:
docker run --name=mygogs -p 10022:22 -p 10080:3000 -v /var/gogs:/data gogs/gogs
图例:


六、gogs配置
1.安装gogs成功后,访问地址:自己的ip:10080
图例:


2.初始话安装配置
图例1:


图例2:


图例3:


3.到此恭喜你已经安装成功了,可以尽情的使用了。


七、常见问题
1.安装gogs,pull拉不下来或者docker的Get https://registry-1.docker.io/v2/: net/http: request canceled 报错 ,可以看下这个详解:https://blog.csdn.net/laogouhuli/article/details/92987525
2.安装成功后配置无法提交报:提示数据库设置不正确:dial tcp 192.168.0.18:3306: getsockopt: no route to host
解决方案:
关闭防火墙
[root@localhost ~]# vim /etc/firewalld/zones/public.xmlzone>short>Publicshort>description>For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.description>service name="dhcpv6-client"/>service name="ssh"/>port protocol="tcp" port="443"/>port protocol="tcp" port="22"/>port protocol="tcp" port="21"/>port protocol="udp" port="53"/>port protocol="tcp" port="8081"/>port protocol="tcp" port="8080"/>port protocol="tcp" port="80"/>port protocol="tcp" port="9090"/>port protocol="tcp" port="2222"/>port protocol="tcp" port="3306"/>zone>[root@localhost ~]# firewall-cmd --reloadsuccess[root@localhost ~]#


版权声明:本文内容来自个人博客:编程小乐,遵循CC 4.0 BY-SA版权协议上原文接及本声明。linux上Docker安装gogs私服亲测(详解)【Anolis 8安装docker、亲测成功】本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行可。原文链接:https://www.cnblogs.com/fuzongle/p/12781828.html如有涉及到侵权,请联系,将立即予以删除处理。在此特别鸣谢原作者的创作。此篇文章的所有版权归原作者所有,与本公众号无关,商业转载建议请联系原作者,非商业转载请注明出处。
