04
Sep

Docker概念及常用命令

Docker daemon( Docker守护进程)


Docker daemon是一个运行在宿主机( DOCKER-HOST)的后台进程。可通过 Docker客户端与之通信。


Client( Docker客户端)


Docker客户端是 Docker的用户界面,它可以接受用户命令和配置标识,并与 Docker daemon通信。图中, docker build等都是 Docker的相关命令。


Images( Docker镜像)


Docker镜像是一个只读模板,它包含创建 Docker容器的说明。它和系统安装光盘有点像,使用系统安装光盘可以安装系统,同理,使用Docker镜像可以运行 Docker镜像中的程序。


Container(容器)


容器是镜像的可运行实例。镜像和容器的关系有点类似于面向对象中,类和对象的关系。可通过 Docker API或者 CLI命令来启停、移动、删除容器。


Registry


Docker Registry是一个集中存储与分发镜像的服务。构建完 Docker镜像后,就可在当前宿主机上运行。但如果想要在其他机器上运行这个镜像,就需要手动复制。此时可借助 Docker Registry来避免镜像的手动复制。

一个 Docker Registry可包含多个 Docker仓库,每个仓库可包含多个镜像标签,每个标签对应一个 Docker镜像。


安装

1、Docker 要求 CentOS 系统的内核 > 3.10;通过 uname -r 命令查看你当前的内核版本

# uname -r


2、使用 root 权限登录 Centos。确保 yum 包更新到最新。

# yum -y update


3、如果安装过旧版本的话卸载旧版本

# yum remove docker docker-common docker-selinux docker-engine


4、安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

# yum install -y yum-utils device-mapper-persistent-data lvm2


5、设置yum源

# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo


6、可以查看所有仓库中所有docker版本,并选择特定版本安装

# yum list docker-ce --showduplicates | sort -r 


7、安装docker,由于repo中默认只开启stable仓库,故这里安装的是最新稳定版

# sudo yum install -y docker-ce


8、启动并加入开机启动

# systemctl start docker

# systemctl enable docker


9、验证安装是否成功,有client和service两部分表示docker安装启动都成功了

# docker version


10、卸载docker

# yum -y remove docker-engine


常用

(一) .镜像相关命令


1、搜索镜像

# docker search java


2、下载镜像

# docker pull java:8


3、列出镜像

# docker images


4、删除本地镜像

# docker rmi java



(二) .容器相关命令


1、新建并启动容器

# docker run -d -p 91:80 nginx


-d 后台运行

-p 宿主机端口:容器端口 #开放容器端口到宿主机端口


--net选项:指定网络模式,该选项有以下可选参数:

--net=bridge:默认选项,表示连接到默认的网桥。

--net=host:容器使用宿主机的网络。

--net=container:NAME-or-ID:告诉 Docker让新建的容器使用已有容器的网络配置。

--net=none:不配置该容器的网络,用户可自定义网络配置。


2、列出容器

# docker ps


3、停止容器:docker stop <容器id>命令,即可停止容器

# docker stop f0b1c8ab3633


4、强制停止容器

# docker kill f0b1c8ab3633


5、启动已停止的容器

# docker start f0b1c8ab3633


6、查看容器所有信息

# docker inspect f0b1c8ab3633


7、查看容器日志

# docker container logs f0b1c8ab3633


8、查看容器里的进程

# docker top f0b1c8ab3633


9、进入容器

# docker container exec -it f0b1c8ab3633 /bin/bash


使用docker container exec -it <容器id> /bin/bash命令用于进入一个正在运行的docker容器。如果docker run命令运行容器的时候,没有使用-it参数,就要用这个命令进入容器。一旦进入了容器,就可以在容器的 Shell 执行命令了


10、删除容器

# docker rm f0b1c8ab3633


删除正在运行的容器,可使用-f参数


About Me

Nothing is impossible!

Friends
倩倩的网站儿子的网站丽丽
CATEGORIES
Tags
ChatGPT四舍五入GOBeatles想像冰雪奇缘北京编程SSL证书认知障碍Docker春天行政区域名列表域名体系nginxopen_basedir思维指令编程语言程序URL网站上线域名FTP云服务器搜索引擎JSCSS网页超链接聚合内容列表元素网页构成网站的构成网站的分类网站单标签HTML第一个网页简单网页博域科技2018香山春游AJAX字体
Copyright©2022 王阳 版权所有  京ICP备14005672号-6