二、docker的安装和镜像管理
系列导航
二、docker的安装和镜像管理
1、卸载已经安装的docker
$ sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate
\
docker-engine
2、使用 Docker 仓库进行安装
设置仓库
安装所需的软件包。yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2。
$ sudo yum install -y
yum-utils \
device-mapper-persistent-data \
lvm2
使用以下命令来设置稳定的仓库。
$ sudo
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
注:之后/etc/yum.repos.d会多出一个docker-ce.repo的文件
也可以使用国内清华的源如下
wegt https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
安装 Docker Engine-Community
(1)安装最新版本的 Docker Engine-Community 和 containerd,或者转到下一步安装特定版本:
$ sudo yum install docker-ce docker-ce-cli containerd.io
(2)要安装特定版本的 Docker Engine-Community,请在存储库中列出可用版本,然后选择并安装:
1、列出并排序您存储库中可用的版本。此示例按版本号(从高到低)对结果进行排序。
$ yum list
docker-ce --showduplicates | sort
-r
docker-ce.x86_64 3:18.09.1-3.el7
docker-ce-stable
docker-ce.x86_64 3:18.09.0-3.el7
docker-ce-stable
docker-ce.x86_64 18.06.1.ce-3.el7
docker-ce-stable
docker-ce.x86_64 18.06.0.ce-3.el7
docker-ce-stable
通过其完整的软件包名称安装特定版本,该软件包名称是软件包名称(docker-ce)加上版本字符串(第二列),从第一个冒号(:)一直到第一个连字符,并用连字符(-)分隔。例如:docker-ce-18.09.1。
$ sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
例如:$ sudo yum install docker-ce-19.03.8 docker-ce-cli-19.03.8 containerd.io
3、启动 Docker
$ sudo systemctl start docker
sudo systemctl stop docker
查看docker的版本号
# docker version
注:设置docker开机自动启动
$ systemctl enable docker
4、docker组件
docker主要组建由:镜像、容器、仓库
容器----镜像----仓库
5、安装nginx 示例
(1)查看可用版本
$ docker search nginx
(2)取最新版的 Nginx 镜像
$ docker pull nginx:latest
(3)查看本地镜像
$ docker images
(4)运行容器
$ docker run --name nginx-test -p 8081:80 -d nginx
参数说明:
- --name nginx-test:容器名称。
- -p 8081:80: 端口进行映射,将本地 8081 端口映射到容器内部的 80 端口。
- -d nginx: 设置容器在在后台一直运行。
6、镜像操作
[root@node03 ~]# docker image
Usage: docker image COMMAND
Manage images
Commands:
build Build an image from a Dockerfile
history Show the history of an image
inspect Display detailed information on one or more images
load Load an image from a tar archive or STDIN
ls List images
prune Remove unused images
pull Pull an image or a repository from a registry
push Push an image or a repository to a registry
rm Remove one or more images
save Save one or more images to a tar archive (streamed to STDOUT by default)
tag Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE
(1)导出save
[root@node03 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest c7460dfcab50 2 months ago 126MB
ubuntu v1 d95affe68237 2 months ago 64.2MB
ubuntu latest 549b9b86cb8d 2 months ago 64.2MB
ubuntu 15.10 9b9cb95443b5 3 years ago 137MB
[root@node03 ~]# docker save ubuntu:v1>ubuntu:v1.tar.gz
[root@node03 ~]# ls
anaconda-ks.cfg initial-setup-ks.cfg openstack-swift-object ubuntu:v1.tar.gz
(2)删除rm
[root@node03 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest c7460dfcab50 2 months ago 126MB
ubuntu v1 d95affe68237 2 months ago 64.2MB
ubuntu latest 549b9b86cb8d 2 months ago 64.2MB
ubuntu 15.10 9b9cb95443b5 3 years ago 137MB
[root@node03 ~]# docker image rm ubuntu:v1
强制删除镜像
docker image rm -f ubuntu:v1
Untagged: ubuntu:v1
Deleted: sha256:d95affe682373bd90a87a6ddeabb55923e573b28139a8b89861823c1da376874
Deleted: sha256:5497fad1c6326d9f1e78625d01940f001c5ba7b5c79ce7e4c7daa43d9a00fec8
[root@node03 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest c7460dfcab50 2 months ago 126MB
ubuntu latest 549b9b86cb8d 2 months ago 64.2MB
ubuntu 15.10 9b9cb95443b5 3 years ago 137MB
(3)导入load
注:ubuntu:v1.tar.gz是之前导出的镜像
[root@node03 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest c7460dfcab50 2 months ago 126MB
ubuntu latest 549b9b86cb8d 2 months ago 64.2MB
ubuntu 15.10 9b9cb95443b5 3 years ago 137MB
[root@node03 ~]# docker load -i ubuntu:v1.tar.gz
5497fad1c632: Loading layer [==================================================>] 66.57MB/66.57MB
Loaded image: ubuntu:v1
[root@node03 ~]# ^C
[root@node03 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest c7460dfcab50 2 months ago 126MB
ubuntu v1 d95affe68237 2 months ago 64.2MB
ubuntu latest 549b9b86cb8d 2 months ago 64.2MB
ubuntu 15.10 9b9cb95443b5 3 years ago 137MB
(4)拉取镜像pull
例如:拉取最新的nginx镜像
$ docker pull nginx:latest
(5)推镜像
上推需要先登录
登录
$ docker login
退出
$ docker logout
登录
docker login -u 用户名 -p 密码
docker push 172.25.131.101/library/nginx:latest
(6)镜像重命名tag
注:将名称很长的镜像重命名一个短名字,重命名后老的名称和新的名称都是同一个镜像,删除老名字的镜像只删除了连接,镜像还存在。
(7)查找镜像
例如查找httpd服务的镜像
#docker search httpd
二、docker的安装和镜像管理的更多相关文章
- Docker的安装和镜像管理并利用Docker容器实现nginx的负载均衡、动静分离
Docker的安装 一.Docker的概念 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化 ...
- docker介绍、安装及镜像管理
虚拟化简介 虚拟化(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源,如服务器.网络.内存及存储等,予以抽象.转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以 ...
- 在Ubuntu18.04的Docker中安装Oracle镜像及简单使用
一.软件环境: 1.OS:Ubuntu 18.04 2.已安装了Docker 二.安装Oracle镜像的过程 1.切换到root账号下,如果是普通账号,下面操作指令前面加sudo 2.搜索oracle ...
- docker 的安装和镜像
一.docker的 安装 : 第一种: yum -y install docker systemctl start docker.service systemctl status docker 第二种 ...
- Docker笔记6:Docker 常见命令及镜像管理
目 录 一.Docker 常用命令 docker version 命令 docker info 命令 二.Docker 镜像管理 搜索镜像:docker search 镜像名 获取镜像:docker ...
- 一张图比較 Docker 和 Git:镜像管理设计理念
Docker 的镜像管理设计中大量借鉴了 Git 的理念. 以下这张图将对两者的核心概念和操作进行比較,有助于大家高速掌握管理 Docker 镜像的正确方式. watermark/2/text/aHR ...
- docker第三篇 镜像管理基础
docker 工作原理: 常用的命令docker run .create .start... 都是客户端命令 Docker Daemon 接收到客户端传过来的命令以后 docker daemon会根据 ...
- docker之私有仓库镜像管理
一.查看本地镜像 二.给镜像打标记(tag ) [root@node03 ~]# docker tag wordpress:v1 192.168.1.197:5000/wordpress:v1 2.删 ...
- docker核心概念(镜像、容器、仓库)及基本操作
概要 docker是一种linux容器技术.容器有效的将由单个操作系统挂管理的资源划分到孤立的组中,以便更好的在组之间平衡有冲突的资源使用需求.可简单理解为一种沙盒 .每个容器内运行一个应用,不同的容 ...
- centos7下docker的安装教程
Centos7下docker安装教程以及踩过的那些坑 推荐在Centos下安装docker,在windows下安装docker可能会遇到很多的问题,而且docker官方推荐使用linux环境来使用do ...
随机推荐
- IDEA安装与配置教程
一.下载并安装IDEA 1.下载 1.官网: 下载 IntelliJ IDEA (这里以Windows系统为例,其他系统类似) 2.安装 1.下载完成后,直接点击安装包安装,即可. 2.开始安装,然后 ...
- 叮咚,你的微信年度聊天报告请查收「GitHub 热点速览」
本周热点项目 WeChatMsg 是一个微信记录提取工具,据说它还能帮你分析聊天记录.生成你的年度聊天报告.而又到了年底,部分不幸的小伙伴要开始写年度总结了,这时候 self-operating-co ...
- java中的try-with-resource语法
java的世界千奇百怪...当我甩出如下代码段,不知阁下如何应对? try(A a=new A()){ 和a变量无关的业务代码块 } 没错,这就是"臭名昭著"的try-with-r ...
- 【UniApp】-uni-app-CompositionAPI应用生命周期和页面生命周期
前言 好,经过上个章节的介绍完毕之后,了解了一下 uni-app-OptionAPI应用生命周期和页面生命周期 那么了解完了uni-app-OptionAPI应用生命周期和页面生命周期之后,这篇文章来 ...
- ELT安装
前言: ETL是将业务系统的数据经过抽取.清洗转换之后加载到数据仓库的过程, 目的是将企业中的分散.零乱.标准不统一的数据整合到一起,为企业的决策提供分析依据, ETL是BI(商业智能)项目重要的一个 ...
- 给祖传系统做了点 GC调优,暂停时间降低了 90%
问题描述 公司某规则引擎系统,在每次发版启动会手动预热,预热完成当流量切进来之后会偶发的出现一次长达1-2秒的Young GC(流量并不大,并且LB下的每个节点都会出现该情况) 在这次长暂停之后,每一 ...
- [python]数据分析--数据清洗处理case1
数据预处理案例1 主要涉及pandas读取csv文件,缺失值和重复值处理,分组计数,字段类型转换 ,结果写入到Excel. 根据要求对CSV数据集进行处理要求如下: 保留数据关键信息:time.lat ...
- 封装RabbitTemplate,使用自定义消息转换器
前面创建项目我就省了...活不多说直接上代码! 核心代码 RabbitMQConfig import lombok.extern.slf4j.Slf4j; import org.springframe ...
- 公私两用U盘管理软件:保障企业数据安全
随着信息技术的不断发展,企业对数据安全的关注程度越来越高.U盘作为一种便携式的移动存储设备,在工作中被广泛使用,但其本身也存在很多安全隐患,会面临数据泄漏和未经授权访问的风险.例如:企业研发部机密文档 ...
- ElasticSearch之Analyze index disk usage API
本API用于分析.统计指定index当前占用的存储空间. 考虑到本特性目前仍然处于预览状态,因此使用方法.参数等可能会发生变化,或者未来也许会被删除. 本API暂时不建议在生产系统中使用. 命令样例如 ...