这里只讲CentOS系统中安装Docker,操作系统内核版本要求高于3.10并且必须是64位,一般来说为CentOS 6.5以上版本,如不确定的话,可以查看内核版本,敲入命令
uname -r
yum -y install docker
查看所有版本
yum list docker
安装版本,例如:
yum -y install docker-1.12.6
systemctl start docker
或者
service docker start
docker version
docker run hello-world
yum -y remove docker
rm -rf /var/lib/docker
docker search nginx
该表格有五个列,含义如下:
NANE:镜像仓库名称
DESCRIPTION:镜像仓库描述
STATUS:镜像仓库收藏数,也就是被收藏了多少次,间接表示了该仓库的欢迎程度
OFFICAL:标识是否为官方仓库,OK标识为由软件的官方项目组创建和维护
AUTOMATED:标识是否是自动构建的镜像仓库
例如,想要下载nginx的
docker pull nginx
此时,会下载一个默认为最新版本的nginx镜像
如果要下载指定版本的镜像,需要去dockerhub上搜索
然后下载自己指定的版本
docker pull nginx:1.12.2
docker images
上图为我自己创建的一个镜像,此图仅供参考,这里有五列,分别标识
REPOSITORY:镜像所属仓库
TAG:镜像标签,也可以说是版本
IMAGE ID:镜像ID,唯一标识一个镜像
CREATED:创建时间
SIZE:镜像大小
docker rmi nginx
也可以根据id来删除,例如我要删除上面的镜像
docker rmi a3c1c91c9222
docker rmi -f $(docker images)
docker run --name mynginx -d -p 88:80 nginx
这里参数说明一下:
--name :自己定义一个容器名称
-d:表示在后台运行
-p:端口映射,标识宿主机和容器之间端口的映射情况,宿主机的88端口映射容器的80端口,如果不加该参数则端口一致
此外,后面还可以加--network参数
--network=bridge:默认选项,表示连接到默认的网桥
--network=host:容器使用宿主机的网络
--network=container:NAME_or_ID:告诉Docker让新建的容器使用已有容器的网络配置
--network=none:不配置该容器网络,用户可以自己定义网络配置
需要说明的是执行docker run 命令,在启动容器的时候会判断镜像存在不存在,不存在会先pull该镜像,然后再启动
查看已开启的镜像
docker ps
这里有七列,说明一下含义:
CONTAINER ID:容器ID,唯一标识一个容器
IMAGE:所属镜像ID
COMMAND:容器启动时与运行的命令
CREATED:创建时间
STATUS:容器状态,UP表示运行中,Exited表示已停止
PORTS:标识容器对外的端口号
NAMES:标识容器名称,该名称是在启动容器执行docker run --name 时候指定的,不指定会自动生成
docker ps -a
docker stop mynginx
强行停止容器 docker kill 容器名称或者容器ID
docker kill mynginx
docker start mynginx
重启容器 docker restart 容器名或者容器ID
docker restart mynginx
docker exec -it mynginx bash
删除容器 docker rm 容器名称或者容器ID
docker rm mynginx
docker rm -f $(docker ps -a -q)
docker commit -a "chicu" -m "new image" java newimage/java:lasted
-a:作者
-m:描述
java:是我创建的容器名称
newimage/java:lasted:镜像库/镜像名:标签