linux上Docker安装gogs私服亲测(详解)
一、前言
有网友问我为什么要使用私服,可能大部分人都不是太懂,网上那么多存储仓库而且好用方便,但是你想过没有如果企业中的项目,放在人家的仓库上这个安全性不是太好,所以说一般企业都会有自己的私服。本章教程结合安装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/docker
9.启动关闭Docker命令
.启动docker,命令:systemctl start docker
.验证docker是否启动成功,命令:dockers version
.重启docker,命令:systemctl restart docker
.关闭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 : -e MYSQL_ROOT_PASSWORD= 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 : -p : -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.xml
<?xml version="1.0" encoding="utf-8"?>
<zone>
<short>Public</short>
<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=""/>
<port protocol="tcp" port=""/>
<port protocol="tcp" port=""/>
<port protocol="udp" port=""/>
<port protocol="tcp" port=""/>
<port protocol="tcp" port=""/>
<port protocol="tcp" port=""/>
<port protocol="tcp" port=""/>
<port protocol="tcp" port=""/>
<port protocol="tcp" port=""/>
</zone> [root@localhost ~]# firewall-cmd --reload
success
[root@localhost ~]#
八、关于作者:
1.如果有任何不懂的地方可以咨询我,随时欢迎互相帮助。
2.技术交流群:422167709。
3.图解不易,打开微信扫码帮忙关注一下,学习更多的知识,举手之劳,感谢您关注公众号 "编程小乐"。

linux上Docker安装gogs私服亲测(详解)的更多相关文章
- linux上Docker安装gogs私服
一.背景介绍 Gogs 是一款类似GitHub的开源文件/代码管理系统(基于Git),Gogs 的目标是打造一个最简单.最快速和最轻松的方式搭建自助 Git 服务.使用 Go 语言开发使得 Gogs ...
- VS 2013驱动开发 + Windbg + VM双机调试(亲测+详解)
------------VS 2013驱动开发 + Windbg + VM双机调试(亲测+详解)------------- WIN10已上线,随之而来的是VS2015:微软在 "WDK760 ...
- SonarQube学习(一)- 使用Docker安装SonarQube(亲测可用)
一.前言 不得不吐槽下,现在的博客写的真太扯淡了,就网上写的使用docker安装SonarQube而言,搜到十篇文章,最少9篇照着操作配置都不可用,卡在SonarQube无法启动.自然,我也是被折磨的 ...
- linux上docker安装centos7.2
1.安装 docker pull centos:7.2.1511 2.启动镜像 docker run -d -i -t <IMAGE ID> /bin/bash 3.进入容器 docker ...
- Linux 系统下安装JDK1.8的教程详解
一,安装前的清理工作 ? 1 2 3 rpm -qa | grep jdk rpm -qa | grep gcj yum -y remove java-xxx-xxx 二 , 在线下载JDK 命令: ...
- Linux使用scp命令进行文件远程拷贝详解
前言 scp是 secure copy的缩写, scp是Linux系统下基于ssh登陆进行安全的远程文件拷贝命令.Linux的scp命令可以在Linux服务器之间复制文件和目录. 使用语法: scp ...
- Centos7使用Docker安装Gogs搭建git服务器
gihub地址:https://github.com/gogs/gogs gogs官网:https://gogs.io/ gihub官方docker安装gogs方法:https://github.co ...
- Linux通过docker安装运行酷Q--用QQ骰子君进行跑团
Linux通过docker安装运行酷Q 文:铁乐与猫 需求:和小伙伴周末进行愉快的TRPG跑团,需要在QQ讨论组上加了qq小号后,将qq小号用酷Q配合投骰的应用变成骰子君. 限制:我个人的云计算服务器 ...
- docker 安装 gogs(go git server) 及问题解决
docker安装gogs 参考官方说明 gogs mysql 支持 运行一个mysql image docker run --name gogs-mysql -e MYSQL_ROOT_PASSWOR ...
随机推荐
- ClickHouse学习系列之二【用户权限管理】
背景 最近花了些时间看了下ClickHouse文档,发现它在OLAP方面表现很优异,而且相对也比较轻量和简单,所以准备入门了解下该数据库系统.在安装完之后首先做的应该如何设置用户密码以及权限控制.因为 ...
- 字节码类库之Javassist
Javassist优势 – 比反射开销小,性能高.–javassist性能高于反射,低于ASM运行时操作字节码可以让我们实现如下功能:– 动态生成 新的类– 动态改变某个类的结构 ( 添加 / 删除 ...
- iOS 静态:动态 Pod
一.静态和动态 在项目中使用 pod 实现模块化,对于子模块和第三类库的导入方式存在两种:静态库.动态库. 当在 podfile 中指定 use_frameworks! 时,子模块和第三方类库将被打包 ...
- Codeforces 杂题集 2.0
记录一些没有写在其他随笔中的 Codeforces 杂题, 以 Problemset 题号排序 1326D2 - Prefix-Suffix Palindrome (Hard version) ...
- 面试官:JavaScript 原始数据类型 Symbol 有什么用?
以前提到 JavaScript 原始数据类型时,我们知道有Number,String,Null,Boolean,Undefined这几种.ES6 引入了新的基本数据类型Symbol和BigInt.今天 ...
- VAuditDemo-文件包含漏洞的审计
包含漏洞 include.require等先关函数,include($file) 文件包含漏洞的问题在于参数可控(路径.文件名.后缀) include($path.$filename.$ext) 包含 ...
- 【tensorflow2.0】AutoGraph的机制原理
有三种计算图的构建方式:静态计算图,动态计算图,以及Autograph. TensorFlow 2.0主要使用的是动态计算图和Autograph. 动态计算图易于调试,编码效率较高,但执行效率偏低. ...
- 用SQL*Plus命令启动和关闭数据库
用SQL*Plus命令启动和关闭数据库 1.启动方式 starup或startup open startup nomount startup mount startup read only [x] s ...
- Jmeter压力测试笔记(5)问题原因
压测链路是jmeter=>slb=>nginx => php=>rds 报 Too Many Connections 的原因是前端同时保持了 16000 个连接,达到实例规格的 ...
- .NET项目升级手记:可为空引用
c# 8引入了新特性:"可为空引用"(详情),这个功能个人觉得挺好的,能够非常明确的表现程序设计者的意图,编译器能够进行检查,尽最大可能减小NullReferenceExcepti ...