当前位置: 首页 > article >正文

01、Docker学习,第一天:简单入门与安装

Docker学习,第一天:简单入门与安装

一、Docker简介

环境配置如此之麻烦,换台机器,重来一次,费事费力。安装的时候,把原始环境一模一样的复制过来。开发人员利用Docker可以消除写作编码时,”在我的机器上可以正常工作“的问题。

Docker包含两方面的技术:
	镜像技术:打破“代码即应用”的观念,从系统环境开始,从底至上打包应用、
	包含:运行文档,配置环境,运行环境,运行依赖包,操作系统发行版,内核等。

Docker是基于Go语言实现的云开源项目。build ship and run any app,anywhere

只需要一次配置好环境,换到别的机器上就可以一键部署,大大简化了操作。

能干嘛:
	解决了运行环境和配置问题软件容器,方便做持续集成病有助于整体发布的容器虚拟化技术

注意:Docker要求Centos6.5以上的版本

三要素:
	仓库、镜像、容器

镜像---类似模板,一个只读的模板,一个镜像可以创建很多个容器
容器---容器是用镜像创建的运行实例。Docker利用容器独立运行一个或一组应用。可以看做一个简易版的Linux环境。
仓库---集中存放镜像的地方。

1、Docker本身是一个容器运行载体或称之为管理引擎。我们把应用程序和配置以来打包好行程一个可交付的运行环境,这个打包好的运行环境就似乎image镜像文件。只有通过这个镜像文件才能生成Docker容器。image文件可以看做是容器的模板。Docker根据image文件生成容器的实例。同一个image文件,可以生成多个同时运行的容器实例

2、image文件生成的容器实例,本身也是一个文件,称之为镜像文件

3、一个容器运行一种服务,当我们需要的时候,就可以通过docker客户端创建一个对应的运行实例,也就是我们的容器

4、至于仓储木九十放了一对镜像的地方,我们可以吧镜像发布到仓库中,需要的时候从仓库中拉下来就可以了

二、Docker的安装

1、Centos6.8安装

1》、yum install -y epel-release
		Docker是用epel发布,RHEL系的OS首先要确保已经持有EPEL仓库,否则先检查OS版本,然后安装相应的EPEL包
2》、yum install -y docker-io
3》、安装配置文件:/etc/sysconfig/docker
         other_args=
		 DOCKER_CERT_PATH=/etc/docker
		 DOCKER_NOWARN_KERNEL_VERSION=1
4》、启动Docker后台服务:service docker start
5》、Docker version验证

2、Centos7安装

官网文档:  https://docs.docker.com/install/linux/docker-ce/centos/

1》、yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2
2》、yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
3》、可选:yum-config-manager --enable docker-ce-nightly

yum-config-manager --enable docker-ce-test

4》、yum install docker-ce docker-ce-cli containerd.io

5》、启动 systemctl start docker
6》、测试 docker run hello-world

3、卸载Docker

yum remove docker \
			docker-client \
			docker-client-latest \
            docker-common \
            docker-latest \
            docker-latest-logrotate \
            docker-logrotate \
            docker-selinux \
            docker-engine-selinux \
            docker-engine \

4、docker开机启动

systemctl enable docker   ##开启开机自启
systemctl disable docker  ##关闭开机自启

5、docker容器自启动
我们设置了docker自启动后,docker可以管理各种容器了,对于容器我们也可以设置重启的策略。
在容器退出或断电开机后,docker可以通过在容器创建时的–restart参数来指定重启策略;

no			不自动重启容器. (默认值)
on-failure	  容器发生error而退出(容器退出状态不为0)重启容器,可以指定重启的最大次数,如:on-failure:10
unless-stopped 		 在容器已经stop掉或Docker stoped/restarted的时候才重启容器
always 			在容器已经stop掉或Docker stoped/restarted的时候才重启容器,手动stop的不算

# 设置启动策略
docker run --restart always --name mynginx -d nginx
docker update 84c  --restart always

如果容器已经被创建,我们想要修改容器的重启策略

docker update --restart no mynginx

或

docker container update --restart=always 3e64cad716c0

注意:
容器只有在成功启动后restart policy才能生效。这里的"成功启动"是指容器处于up至少10秒且已经处于docker监管。这是避免没有成功启动的容器陷入restart的死循环。

如果手动stop一个容器,容器设置的restart policy将会被忽略,除非Docker守护进程重启或者容器手动重启;这是避免了如果重启策略设置了always,如果不忽略policy那么容器无法手动停止。


http://www.kler.cn/a/469252.html

相关文章:

  • 源代码编译安装X11及相关库、vim,配置vim(3)
  • gesp(C++四级)(6)洛谷:B3870:[GESP202309 四级] 变长编码
  • vue3 数字滚动效果
  • 用户界面软件01
  • 【通识安全】煤气中毒急救的处置
  • 【LC】2469. 温度转换
  • 鸿蒙Flutter实战:15-Flutter引擎Impeller鸿蒙化、性能优化与未来
  • 数据可视化分析详解
  • leetcode hot100 乘积最大子数组
  • Cursor连接腾讯云Cloud Studio开发环境
  • 如何在 Ubuntu 22.04 上配置 Logrotate 高级教程
  • Go语言的 的数据封装(Data Encapsulation)基础知识
  • 关于Hugging Face模型国内下载
  • Kotlin 数据类与密封类
  • Linux下学【MySQL】表中修改和删除的进阶操作(配实操图和SQL语句通俗易懂)
  • 开源模型应用落地-Qwen2.5-7B-Instruct与vllm实现推理加速的正确姿势-利用KOR框架实现结构化输出(七)
  • 【汇编语言】外中断(二)—— 键盘的奥秘:编写自己的 int 9 中断例程
  • 【软考网工笔记】操作系统管理与配置——Windows
  • Python中使用PostgreSQL和Apache AGE扩展来绘制和显示图表
  • Go语言的 的变量声明(Variable Declaration)基础知识
  • MySQL叶子节点为啥使用双向链表?不使用单向呢?
  • centos7yum安装mysql5.7
  • 【机器学习:三、常见的代价函数】
  • JS实现SVG的TEXT标签自动换行功能
  • [CTF/网络安全] 攻防世界 view_source 解题详析
  • UE5失真材质