Docker学习系列之一——安装篇
一、目的
Docker是目前非常流行的虚拟技术,在云计算领域得到了广泛的应用。国内的阿里、京东等大厂都非常普遍地应用了Docker。本文记录了Docker的基本安装过程及最终运行结果,以期备忘,及和同行们交流之用。
二、操作流程
有2台虚拟机,分别安装Centos 7.6,一台Docker宿主机,IP为:192.168.221.129,另一台为Docker应用主机,IP为:192.168.221.130。本文安装过程及结果为:两台机器都安装Docker,其中,宿主机器安装私有仓库,在Docker公有仓库中下载hello-world镜像,打标签后,将镜像文件上传到私有库。在Docker应用主机中,下载宿主机器上的hello-world镜像,运行并查看结果。操作流程图为:
三、操作过程:
1.两台虚拟机都安装Docker,使用命令为:
- yum install docker-ce
安装完成后,关闭防火墙,并设置不随机启动以期达到通过端口通讯的目的。相关命令为:
- systemctl status firewalld
- systemctl stop firewalld
- systemctl disable firewalld
之后,启动Docker并设置随机启动
- systemctl enable docker.service
- systemctl start docker.service
以上为基本操作,以下进入正题。
首先,从Docker公有库中,拉取仓库镜像,使用命令为:
- docker pull registry
拉取完成后,查看下本机的镜像:
- docker images
确认无误后,创建本机私有仓库的对应目录,用于存储仓库内的镜像。
- mkdir -p /opt/data/registry //创建仓库所在的文件目录
- docker run -d -p : -v /opt/data/registry:/var/lib/registry
- --name private_registry registry
运行docker ps查看容器是否启动成功:
然后,根据本机ip地址及配置文件路径,打开docker配置文件(配置文件位置,通过systemctl status docker命令查看),在配置文件中的ExecStart行添加配置:
- --insecure-registry=192.168.221.129:
然后运行命令:
- systemctl daemon-reload
- systemctl restart docker
docker start private_registry
重新加载配置文件,并启动Docker。
四、测试私有仓库
1.从公有仓库拉取hello-world镜像,并检查拉取结果
2.打标签:
- docker tag hello-world 192.168.221.129:/myhello
3.推入私有仓库:
注意,此时一定要确保私有仓库启动,如果没有启动,则会报错(无法链接),需要使用以下命令来启动,
- docker start private_registry
4.在Docker应用机器上,使用命令拉取hello-world镜像:
- docker pull 192.168.221.129:/myhello
5.运行hello-world镜像,查看运行结果:
五、遗留问题
1.Docker结构及配置需要详细研究
2.在从私有库下载镜像时能否通过简称下载?
3.更新私有库镜像后,应用机如何自动获取镜像更新?
4.实战化操练:实际运行一个java或者其他web应用以便发现更多问题
本文结束。
Docker学习系列之一——安装篇的更多相关文章
- Oracle11g R2学习系列 之一安装篇
前言 最近想去前同事推荐的一个Oracle相关的岗位竞争一下,由于之前没有使用Oracle的相关经验,所以决定学习一下,就算最终岗位应聘不成,至少也有了一些Oracle经验了,说不定哪天就用上了.再说 ...
- Docker学习系列(一):windows下安装docker(转载)
本文目录如下: windows按照docker的基本要求 具体安装步骤 开始使用 安装远程连接工具连接docker 安装中遇到的问题 Docker的更新 Docker中的jupyter windows ...
- Docker 技术系列之安装多版本Mysql5.6和Mysql5.7
大家好,后面的就不是关于MAC专有的内容,基本是跟Java环境,基础技术方面有关.所以这个教程对于在linux系统还是macOS都是通用的,不用担心. 上一篇,我们安装好对应的Docker之后,感受到 ...
- Docker 技术系列之安装Docker Desktop for Mac
终于要进入到Docker技术系列了,感谢大家的持续关注. 为什么要选择Docker?因为Docker 轻巧快速,提供了可行.经济.高效的替代方案.举个例子,安装Nginx,Mysql,Redis等常用 ...
- Intelli IDEA学习系列之快捷键篇
Intelli IDEA学习系列之快捷键篇 IDEA简介: IDEA 全称IntelliJ IDEA,是java语言开发的集成环境,IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能 ...
- OracleDesigner学习笔记1――安装篇
OracleDesigner学习笔记1――安装篇 QQ:King MSN:qiutianwh@msn.com Email:qqking@gmail.com 一. 前言 Oracle是当 ...
- 全网最详细的Git学习系列之安装各个Git图形客户端(Windows、Linux、Mac系统皆适用ing)(图文详解)
不多说,直接上干货! 目前Git图形客户端 TortoiseGit .SourceTree .GitUp .SmartGit .QGit .GitX .Gitnub.Tower .Git-cola . ...
- docker学习笔记1 -- 安装和配置
技术资料 docker中文官网:http://www.docker.org.cn/ 中文入门课程:http://www.docker.org.cn/book/docker.html docker学习笔 ...
- RabbitMQ学习系列一安装RabbitMQ服务
RabbitMQ学习系列一:windows下安装RabbitMQ服务 http://www.80iter.com/blog/1437026462550244 Rabbit MQ 是建立在强大的Erla ...
随机推荐
- session的部分理解
定义 Session:在计算机中,尤其是在网络应用中,称为“会话控制”.Session 对象存储特定用户会话所需的属性及配置信息.这样,当用户在应用程序的 Web 页之间跳转时,存储在 Session ...
- postgresql,封装数据库语句时,查询报错。
sql = "select password from admin where username = " + "\'" + username + "\ ...
- HTML5 Canvas爱心时钟代码
这是一款数字时钟动画,数字又多个小爱心组成,又何问起整理,随着时间推进,每一秒钟新数字替换旧数字,旧数字离去使用天女散花动画,花是五颜六色的. 查看效果:http://hovertree.com/te ...
- zuul源码(2)
路由 路由是网关的核心功能,既然在spring的框架下,那就要按Spring的规矩来. 路由规则类:org.springframework.cloud.netflix.zuul.filters.Rou ...
- Scala基础学习(一、数据类型)
Scala 支持的数据类型: 数据类型 描述 Byte 8位有符号补码整数.数值区间为 -128 到 127 Short 16位有符号补码整数.数值区间为 -32768 到 32767 Int 32位 ...
- Composer的入门与使用
一 什么是composer composer是一种php的包管理工具, 类似于Java的maven, Ubuntu的apt等, 可以方便的解决php的包管理, 管理依赖关系等问题. 二 使用compo ...
- jmeter 写正则表达式
():括起来的部分就是要提取的. .:匹配任何字符串. +:一次或多次. ?:不要太贪婪,在找到第一个匹配项后停止. 需要根据要取的数据取值 jt: eyJhbGciOiJSUzI1NiJ9.ey ...
- 报文 HTTP HTTPS
报文是网络中交换与传输的数据单元,即站点一次性要发送的数据块.报文包含了将要发送的完整的数据信息,其长短很不一致,长度不限且可变. 报文也是网络传输的单位,传输过程中会不断的封装成分组.包.帧来传输, ...
- win10蓝屏,windbg的使用
win10蓝屏,windbg的使用 上微软官网下载windbg https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/d ...
- jvm各区域OutOfMemory测试方法
1.堆溢出 VM options:-Xmx9999k -Xmn3333k public class HeapOverMemory { public static void main(String[] ...