docker的安装于基本操作命令
一. docker的安装
1.docker的离线安装:
上传docker的离线安装包:
docker.service docker-19.03.9.tgz
1. 解压docker安装包 tar zxf docker-19.03.9.tgz cp docker/* /usr/bin
2. 复制docker启动脚本 cp docker.service /usr/lib/systemd/system
3. 启动docker systemctl daemon-reload systemctl start docker
4. 配置镜像加速 cp daemon.json /etc/docker/
5. 重启docker systemctl restart docker
--------------------------------------- 基本操作 查看本地的镜像列表
docker images
下载一个名为hello-world镜像
docker pull hello-world
基于 hello-world 镜像创建一个名为ll的容器
docker run --name ll hello-world 二.docker的基本操作命令
二 docker的基本操作命令
创建容器: 镜像---->容器
镜像的命名: 镜像的名字:标签 例如: nginx:1.2 nginx:2.1 nginx:latest
命令分类:
镜像:
---------------------------------------------------------- docker search 从仓库中搜索镜像
docker search httpd
*docker images 查看本地镜像列表
*docker pull 下载镜像
docker pull httpd docker push 推送本地镜像到远程仓库
docker push httpd docker rmi 删除一个或者多个镜像
dokcer rmi nginx httpd tomcat
*docker rmi -f 强制删除一个或者多个镜像
docker tag 给镜像创建一个tag
docker tag nginx:latest nginx:1.1
*docker inspect 查看容器或者镜像的元数据,详细的信息
docker inspect nginx 镜像的导出和导入:
导出镜像为一个tar文件
docker save -o nginx.tar nginx:latest 将nginx镜像导出为nginx.tar
导出的文件是没有压缩的,体积比较大,建议压缩
压缩
# gzip nginx.tar
解压缩
# gunzip nginx.tar.gz
从一个tar文件导入镜像
docker load -i nginx.tar
仓库:
---------------------------------------------------------- docker login 登录到仓库中
docker login 仓库地址 docker logout 从仓库中登出
容器的:
---------------------------------------------------------- 容器名不可重复,必须是唯一的 docker create 创建容器
docker create --name web2 httpd
**docker run 创建容器,并运行容器,若本地没有依赖的镜像,它会自动下载镜像后再创建容器
–name 新容器的名字,名字是唯一的,不可重复
-d 后台运行容器
-p 做容器的端口映射,这样可以让外部的客户端访问容器
基于httpd镜像,创建一个名为web2的容器 ,容器后台运行,将容器的80端口映射到宿主机的80端口 注意,宿主机的80端口一定要处于空闲状态,否则会提示端口被占用
docker run --name web2 -d -p 80:80 httpd
*docker start/stop/restart 容器名/ID 启动、停止、重启容器
docker start web1 web2
dokcer stop web1 web2
dokcer retart web1 web2
*docker ps 查看正在运行的容器
*docker ps -a 查看所有的容器,运行的和停止
*docker ps -q 只查看运行的容器的ID
*docker ps -qa 查看所有容器的ID
*docker stop $(docker ps -q) 停止所有正在运行的容器
*docker rm web1 删除已经停止的一个或者多个容器
*docker rm -f web1 web2 强制删除一个或者多个容器 docker rm $(docker ps -qa) 删除所有已经停止的容器
docker kill web1 web2 杀死一个或者多个容器
docker pause 暂停一个或者多个容器
docker pause web1 web2 docker unpause 取消暂停一个或者多个容器
docker pause web1 web2
docker rename 旧容器名 新容器名 给一个容器重命名
***
docker rename web1 webserver1
docker logs 查看容器的日志
docker logs web1
*docker logs -f 滚动更新查看日志
docker logs -f web1
*docker cp 在容器和宿主机之间复制文件和文件夹 复制本地文件到容器内 # docker cp docker.service 46c17600e99f:/root 复制容器内的文件到本地 # docker cp 46c17600e99f:/root/docker.service ./
docker stats web1 查看容器的资源消耗情况(cpu、内存、网络IO、磁盘IO) docker top web1 查看容器内部的进程
*docker exec 在容器中执行一条命令 在容器web1中创建一个wg.txt文件
docker exec web1 touch wg.txt文件
*进入一个容器中: *docker exec -it 容器名 bash 或者 *docker exec -it 容器名 sh