1.安装与配置docker
安装docker
首先安装 Docker 必要依赖包 :
yum install -y yum-utils device-mapper-persistent-data lvm2
由于自带 yum 没有 Docker-CE 所以我们需要先增加 docker repo:
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
用 yum 安装 Docker:
yum install -y docker-ce
直接yum安装,安装成功后查看版本
docker -v
启动docker
service docker start
设置开机启动
chkconfig docker on
docker命令操作
1.获取镜像
docker pull [选项] [Docker Registry地址]<仓库名>:<标签>
eg: docker pull mysql:5.7.19
2.列出本地镜像
docker images
3.列出容器
docker ps
docker ps -a //查看已停止的容器
只显示容器的id: docker ps -q 或者 docker ps -qa
CONTAINER_ID 容器 ID
IMAGE 镜像名称
COMMAND 启动容器时运行的命令
CREATED 容器的创建时间
STATUS 容器运行的状态,UP表示运行中, Exited表示已停止
PORTS 容器对外的端口号
NAMES 容器名称。该名称默认由 Docker自动生成,也可使用 docker run命令的–name选项自行指定
4.删除镜像
删除镜像之前,先查看是否有容器在运行,若在运行,先 docker stop CONNTAINER_ID
再查看停止的容器 docker ps -a
清除所有已经停止的容器 docker rm $(docker ps -qa)
删除对应的镜像: docker rmi IMAGE_ID
docker rmi -f redis 强制删除
5.启动容器
普通启动,容器执行完成之后就退出
docker run nginx:latest /bin/echo "hello world"
>>hello world
以交互式方式进入容器,添加 -t 创建终端,-i 交互模式
docker run -t -i nginx:latest /bin/bash
>>/#
docker run -d 守护状态运行
docker run -idt nginx:latest /bin/bash
退出交互 exit
docker rm $(docker ps -qa)删除已经停止的容器
6.进入容器,docker exec | docker attach
6.1 docker exec 进入命令,该命令较常用
通过CONTAINER_ID进入容器
docker exec -it 580f57bd8379 /bin/bash
通过CONTAINER_NAME进入容器,该name就是启动是–name的值
docker exec -it CONTAINER_NAME /bin/bash
eg : docker exec -it mynginx /bin/bash
6.2 docker attach [CONTAINER_ID | NAMES]
docker attach mynginx
docker attach 4b0b213a321d
7.容器的启动、停止和重启
docker start CONTAINER_ID // 启动一个容器
docker stop CONTAINER_ID // 停止一个容器
docker restart CONTAINER_ID // 重启一个容器
docker kill redis // 杀死运行的容器
8.docker rm 删除处于终止状态的容器
清理某个容器
docker rm CONTAINER_ID
清理所有容器
docker rm $(docker ps -qa)
9.查看容器日志
docker logs CONTAINER_ID
10.文件拷贝docker cp
拷贝文件到宿主机
docker cp CONTAINER_ID:SRC_DIRECTORY DES_DIRECTORY
docker cp 4b0b213a321d:/home/hello.txt /home
拷贝文件到容器
docker cp SRC_DIRECTORY CONTAINER_ID:DES_DIRECTORY
docker cp ./info.txt 4b0b213a321d:/home/
11.docker端口映射
docker run -p ip:hostPort:containerPort redis
宿主机IP和端口:ip:hostPort
容器端口:containerPort
docker run -p 192.168.149.131:8001:80 nginx:latest //前台运行
docker run -d -p 192.168.149.131:8001:80 nginx:latest // 后台运行
12.docker容器名称设置
–name指定启动容器的名称
docker run -d --name nginx_1 nginx:latest
13.镜像搜索
docker search mysql
14.进入容器内部
eg:
docker exec -it redis /bin/bash
15.常用启动容器命令
eg:
docker -d --name 容器名 -p 端口号:端口号 镜像:tag