VM虚拟机上使用centos7安装docker启动gogs服务视频教程

BiliBili视频教程链接飞机票,点我

使用VMware Workstation安装Centos7 MinMal系统

第一步:下载安装VMware Workstation

提供一个友情下载链接虚拟机VMware Workstation Pro 12.0.1【PJ版】大家自行安装

下载Centos7 MinMal ISO最小化安装镜像

进入cnetos官方网站下载MinMal ISO系统镜像

第二部:使用VM安装系统,设定管理员账户密码以及普通用户账户,设定网络,安装VMware Tools虚拟机驱动

提供一个友情教程【CentOS】CentOS7的安装,网络的开启和VMware Tools的安装

第三步:使用xshell进行ssh登录验证

下载及使用自行百度软件下载地址

SSH的Host地址在虚拟机centos中使用一下地址进行查看,默认端口22,密码管理员密码

$ ip addr

安装docker

Get Docker CE for CentOS

由于Docker限制分为两个版本CE和EE,所以之前yum里面的docker是老版本,需要先进行卸载,现在的包名叫做docker-ce

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

安装Docker CE

你能够通过不同的方式来安装DockerCE,取决于你的需要。

通过仓库来安装docker

当你在一台新的机器上第一次安装docker之前,你需要去设定一下你的Docker仓库,之后你才能够安装或者更新Docker从仓库中

设置仓库:

  1. 安装依赖的库:yum-utils、yum-config-manager、device-mapper-persistent-data、lvm2、devicemapper
$ sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
  1. 使用下列的命令去设置stable仓库,你大部分使用的是stable版本的仓库,不过你想安装编译从edge或者test版本也是没有问题的
$ sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
  1. 选项:允许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

备注:从Docker17.06开始,stable releases版本同样会被推送到edge和test的仓库中

安装Docker CE

  1. 安装最新版本的Docker CE或者按安装特殊版本
$ sudo yum install docker-ce

警告:如果你有移除Docker,安装或者更新特殊版本在yum install或者yum update命令,仍然会安装最高可用版本的docker,有可能你获取不到适当的版本

  1. 在生产系统你需要搞特殊版本的docker而不是最新版,列表可以查看的版本,使用sort -r命令获得版本结果你需要加入对应的版本号.x86_64在包名的后面
$ yum list docker-ce.x86_64  --showduplicates | sort -r
docker-ce.x86_64 17.06.ce-1.el7.centos docker-ce-stable

安装对应的版本如上图版本就是docker-ce-17.06.ce-1

$ sudo yum install <FULLY-QUALIFIED-PACKAGE-NAME>
# example
$ sudo yum install docker-ce-17.06.1.ce
  1. 启动Docker
$ sudo systemctl start docker
  1. 验证docker是不是被正确的安装,通过hello-world的镜像
$ sudo docker run hello-world
  1. 卸载docker
  • 第一步:卸载docker包
$ sudo yum remove docker-ce
  • 第二步:删除你的镜像、容器、磁盘、以及相关的配置文件在你电脑上不会自动删除,通过命令行删除的镜像、容器、文件
$ sudo rm -rf /var/lib/docker
  1. windows和mac安装,官网下载,安装包的方式安装,安装完成后即可使用
  1. 官方还提供了其他方式进行安装,各位参考官方网站

注意点:windows使用的hype-V技术,和VMware Workstation使用的虚拟化技术有冲突,两者不能同时启动,用windows的同学注意咯

添加docker镜像节点

DaoCloud:Docker加速器,注册账号,按照使用教程进行处理

Docker 加速器是否收费?

DaoCloud 为了降低国内用户使用 Docker 的门槛,提供永久免费的加速器服务,请放心使用。

使用docker下载gogs镜像,并进行部署安装

进入gogs的github查找对应的教程,本次部署使用docker的模式,所以我们找寻docker方法,实际上部署还有Install from binaryInstall from sourceInstall from packagesInstall with Vagrant等方式。

我们使用docker安装的方式Ship with DockerDocker for Gogs

  1. 拉取镜像
# 拉取gogs镜像到本地docker中,确保docker启动中
$ docker pull gogs/gogs
# 查看镜像
$ docker images
# docker使用帮助
$ docker --help
  1. 配置目录启动镜像设定参数
# 下载镜像
$ docker pull gogs/gogs
# 创建本地磁盘
$ mkdir -p /var/gogs
# 启动gogs
$ docker run --name=gogs -p 10022:22 -p 10080:3000 -v /var/gogs:/data gogs/gogs
  1. 启动参数含义解析

--name:指定启动的容器的名称为gogs

-p:指定端口映射,一个是对外主机端口,映射到docker里面的22端口,同理10080映射到3000的端口,个人觉得如果端口不是不够的情况下,指定相同的端口便于记忆

-v:指定数据磁盘,指定/var/gogs:作为/data的路径

gogs/gogs:镜像的名称,也就是docker的gogs镜像

  1. 停止后重新启动服务
# 启动gogs
$ docker start gogs
# 停止gogs
$ docker stop gogs
  1. 访问gogs配置使用,具体按照系统操作

添加linux服务器防火墙端口过滤命令,按照指定端口进行配置

# 添加防火墙端口通过
$ firewall-cmd --zone=public --add-port=3000/tcp --permanent
# 刷新防火墙
$ firewall-cmd --reload

参考资料

微信公众号:努力编程的小猪

欢迎大家关注,我也希望能够认识更多的人!

【运维技术】VM虚拟机上使用centos7安装docker启动gogs服务教程【含B站视频教程】的更多相关文章

  1. [运维] 如何访问虚拟机上的 Tomcat ?

    环境: 虚拟机: VMware 15 pro    操作系统  Linux  CentOS 7 64 物理机: Windows 7 事先准备: 1: 下载 Tomcat  的压缩包  apache-t ...

  2. 基于ASP.Net Core学习Docker技术第一步:在CentOS7安装Docker平台

    Docker技术几年前就火了,伴随着今年来devops的流行,这项技术一直被技术社区追捧.提起Docker很容易被默认为是Linux平台下的技术,.NET的技术跟他似乎没有沾边,不过那是对非.NET ...

  3. Centos7使用Docker启动elasticsearch服务秒退

    首先查看docker启动日志 docker logs -f 容器id 查看报错信息 OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepG ...

  4. CentOS7安装docker 启动不了解决篇

    [root@test ~]# yum update [root@test ~]# yum install docker [root@test ~]# service docker start Redi ...

  5. 解决本地无法访问vm虚拟机上centos7服务器中已配置好的hugo站点的问题

    一.配置VM网络连接 打开vm,找到"编辑",打开"虚拟网络编辑器" 选中下面截图中的上方为类型为"NAT模式"那一栏,然后点击下方的&qu ...

  6. vm虚拟机上安装apache+php+ftp+mysql

    我在vm虚拟机上想安装 winxp和linux,然后在linux机上装apache+php+ftp+mysql,以下为我的按装过程:  1:连通虚拟机:两个虚拟机都选Host-Onl,查看主机Virt ...

  7. 突破LVS瓶颈,LVS Cluster部署(OSPF + LVS) - lxcong的运维技术 - 开源中国社区

    突破LVS瓶颈,LVS Cluster部署(OSPF + LVS) - lxcong的运维技术 - 开源中国社区 突破LVS瓶颈,LVS Cluster部署(OSPF + LVS)

  8. 端口映射工具 redir/socat/xinetd - 运维技术 - 开源中国社区

    端口映射工具 redir/socat/xinetd - 运维技术 - 开源中国社区 端口映射工具 redir/socat/xinetd    10人收藏此文章, 我要收藏 发表于3天前(2013-08 ...

  9. 干货云集 WOT 2017全球架构与运维技术峰会揭密技术难点

    WOT,World Of Tech专注互联网IT技术领域,是一场不容错过的技术盛会!WOT 2017全球架构与运维技术峰会三大章节,15大技术专场,60+国内外一线互联网精英大咖站台,打造兼顾技术视野 ...

随机推荐

  1. 第三篇:关于TIME_WAIT状态

    前言 为何TCP ”四次分手“ 的过程中会有一个TIME_WAIT状态?这个状态有什么意义呢?这是网络中的一个经典问题,本文将给出精简的回答. 什么是TIME_WAIT状态 这是TCP通信协议中出现的 ...

  2. Google's C++ coding style

    v0.2 - Last updated November 8, 2013 源自 Google's C++ coding style rev. 3.274 目录 由 DocToc生成     头文件   ...

  3. iOS富文本组件的实现—DTCoreText源码解析 数据篇

    本文转载 http://blog.cnbang.net/tech/2630/ DTCoreText是个开源的iOS富文本组件,它可以解析HTML与CSS最终用CoreText绘制出来,通常用于在一些需 ...

  4. 使用boch仿真器在x86 PC平台上搭建Linux0.11系统环境(windows下)

    当你有机会来到这页面时   十有八九是遇到这样一个问题    执行配置文件bochsrc_fd.bxrc时出现找不到 ips的情况! 版本原因吧   将boch版本换成2.4的问题就迎刃而解了~ 简单 ...

  5. 【算法】深度优先搜索(DFS)III

    1. DFS生成排列 众所周知,1,2…n的排列一共有n!个,因此生成全排列至少需要n!的时间复杂度.如果用循环来生成排列,当n稍大时,内外循环会非常之多.可以用DFS模拟解决,生成0 … n-1的排 ...

  6. Linux学习(四)档案与目录管理

    1. 目录与路径  1.1 相对路径与绝对路径  1.2 目录的相关操作: cd, pwd, mkdir, rmdir  1.3 关于执行文件路径的变量: $PATH2. 档案与目录管理  2.1 档 ...

  7. ROM和RAM的故事

    在公众号里看到一篇很好的文章讲解rom和ram,之前也是一直不能理解两者的区别,今天就转载记下来吧.也方便大家学习. 因为我刚开始学习的时候总喜欢刨根问底,一个问题要是不搞清楚,后面学习都会很吃力的. ...

  8. Python3、Unicode、UTF-8、编码

    text = u'你好,今天天气不错' text print(text) text = '\u4f60\u597d\uff0c\u4eca\u5929\u5929\u6c14\u4e0d\u9519' ...

  9. Python开发【模块】:BeautifulSoup

    BeautifulSoup BeautifulSoup是一个模块,该模块用于接收一个HTML或XML字符串,然后将其进行格式化,之后遍可以使用他提供的方法进行快速查找指定元素,从而使得在HTML或XM ...

  10. HTTP的常见状态码

    一.1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态码. 100(继续) 请求者应当继续提出请求.服务器返回此代码表示已收到请求的第一部分,正在等待其余部分. 101(切换协议) 请求者 ...