什么是docker
docker是一个开源的应用容器引擎,开发者可以打包自己的应用到容器里面,然后迁移到其他机器的docker应用中,可以实现快速部署。如果出现的故障,可以通过镜像,快速恢复服务。
环境准备
操作系统:CentOS 7.6.1810
软件源:阿里云镜像(在阿里云镜像站上面可以找到docker-ce的软件源,使用国内的源速度比较快)
安装docker-ce
如果没有物理机,可以先使用虚拟机进行学习。操作系统安装,跳过(网上教程很多)。
1、安装依赖
docker依赖于系统的一些必要的工具,可以提前安装。
yum install -y yum-utils device-mapper-persistent-data lvm2
2、添加软件源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3、安装docker-ce
yum clean all yum makecache fastyum -y install docker-ce
4、启动服务
通过systemctl启动服务
systemctl start docker
5、查看安装版本
这样子就安装成功了,启动服务以后可以使用docker version查看一下当前的版本。
从docker命令使用出发,梳理出如下命令:
参数 | 用途 | 语法 | 示例 |
---|
search | 在docker hub中搜索镜像 | docker search 镜像名称 | docker search nginx |
pull | 在docker hub中下载镜像到本地 | docker pull 镜像名:tag | docker pull nginx:latest |
push | 推送指定镜像到docker镜像服务器 | docker push 本地镜像:tag | docker push nginx:V1 |
images | 查看本地所有docker镜像 | docker images | docker imaegs |
run | 创建容器,并运行 | docker run 参数 镜像名:tag | docker -d run nginx:latest |
history | 查看镜像形成过程 | docker history 本地镜像名:tag | docker history nginx:V1 |
start | 启动容器 | docker start 容器ID或容器名称 | docker strat 3d265463456 |
stop | 停止容器 | docker stop 容器ID或容器名称 | docker stop nginx |
build | 通过dockerfile制作镜像 | docker build 参数 镜像名:tag dockerfile目录 | docker build -t nginx:V1 /opt/ |
attach | 当前shell连接运行容器 | docker attach 容器名 | docker attach nginx |
commit | 保存当前容器为镜像/快照 | docker commit 容器ID或容器名 新镜像名:tag | docker commit nginx nginx:V2 |
cp | 容器与宿主机互相复制文件 | docker cp 容器名:文件目录/名称 本地目录 | docker cp /var/www/html/ nginx:/var/www/html |
create | 创建容器但不启动容器 | docker create 参数 镜像名称 | docker create nginx:V1 |
diff | 查看容器改动 | docker diff 容器ID或容器名称 | docker diff nginx |
exec | 在容器中执行命令 | docker exec 参数 容器ID或名称 命令 | docker exec centos echo '123' |
login | 登入docker镜像源服务器 | docker login 服务器地址 | docker login |
logout | 退出登录镜像源服务器 | docker logout | docker logout |
logs | 输出当前容器的日志信息 | docker logs 容器ID或名称 | docker logs nginx |
port | 查看容器的端口映射情况 | docker port 容器ID或名称 | docker port nginx |
ps | 列出容器列表 | docker ps 参数 | docker ps -a |
restart | 重新启动容器 | docker restart 容器ID或名称 | docker restart nginx |
rm | 删除容器 | docker rm 参数 容器ID或名称 | docker rm nginx |
rmi | 删除本地镜像 | docker rmi 镜像名:tag | docker rmi nginx:V1 |
save | 保存镜像为tar包 | docker save -o tar文件名 镜像名:tag | docker save -o nginx.tar nginx:V1 |
top | 查看容器中进程信息 | docker top 容器ID或名称 | docker top nginx |
version | 查看docker软件版本 | docker version | docker version |
events | 查看docker服务器实时时间 | docker events 参数 | docker events --since="1577321423" |
import | 从tar文件导入docker为镜像 | docker import 参数 tar文件 镜像名:tag | docker import nginx.tar nginx:V2 |
export | 从docker导出镜像为tar文件 | docker export 参数 镜像名:tag tar文件 | docker export nginx:V2 nginx2.tar |
info | 查看docker系统信息 | docker info | docker info |
inspect | 查看容器详细信息 | docker inspect 容器ID或名称 | docker inspect nginx | grep IPAddress |
kill | 杀死正在运行的容器 | docker kill 参数 容器ID或名称 | docker kill nginx |
load | 从tar文件中加载为docker镜像 | docker load -i tar文件 镜像名:tag | docker load -i nginx2.tar nginx:V3 |
pause | 暂停容器 | docker pause 容器ID/名称 | docker pause nginx |
tag | 镜像打标签 | docker tag 镜像名:tag 新镜像名:tag | docker tag nginx:V3 mynginx:V4 |
unpause | 取消暂停的容器 | docker unpause 容器ID/名称 | docker unpause nginx |
wait | 阻塞运行直到容器停止,然后打印出它的退出代码 | docker wait CONTAINER | docker wait CONTAINER |