镜像加速
登录阿里云
bash
docker run hello-world
分析命令:
开始-->docker在本机中寻找镜像-->有-->以该镜像为模版生产容器实例运行;
开始-->docker在本机中寻找镜像-->无-->去远端下载镜像并运行,若远端无此镜像则返回错误。
docker 命令之-帮助启动类命令
Docker启动、重启、停止、状态查看、开机启动
bash
systemctl start docker
systemctl restart docker
systemctl stop docker
systemctl status docker
systemctl enable docker
查看docker概要信息、帮助文档、命令帮助文档
bash
docker info
docker --help
docker 具体命令 --help
eg: docker run --help
docker 命令之-镜像命令
docker统计信息
bash
docker system df
列出本地镜像docker images [OPTIONS] [REPOSITORY[:TAG]]
bash
docker iamges -qa # 列出所有镜像的ID(q:只显示id a:所有镜像(含历史镜像))
docker iamges # 列出所有镜像信息
搜索远端镜像docker search [OPTIONS] TERM
bash
docker search 镜像名字
docker search redis
docker search --limit 5 redis # 查询排名前五的镜像
下载远端镜像 docker pull [OPTIONS] NAME[:TAG|@DIGEST]
bash
docker pull redis # 下载最新的等同于 docker pull redis:latest
docker pull redis:2.1.0 # 指定版本
**镜像推送到远端 docker commit/push [OPTIONS] NAME[:TAG],push之前想登录:docker login ---- docker logout
**
bash
docker commit <container_id> <new_image_name>:<tag> # 当前容器另存(打包)为新的容器,可以指定作者版本号
-a :提交的镜像作者;
-c :使用Dockerfile指令来创建镜像;
-m :提交时的说明文字;
-p :在commit时,将容器暂停。
bash
docker push <repository>/<image_name>:<tag> # 镜像推送到远端
镜像删除docker rmi [OPTIONS] IMAGE [IMAGE...]
bash
docker rmi hello-world #删除单个镜像
docker rmi -f helo-world redis #删除多个镜像 -f: 强制删除
docker rmi -f$(docker images -qa) #删除所有镜像
补充:docker 虚悬镜像指的是仓库名字,镜像名都是none的但是有ID值,这些镜像建议直接删除。
docker 命令之-容器命令
**docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
**
bash
docker run -it --name=容器新名字 redis -p(宿主机端口):(容器端口)
# -i :以交互模式运行容器,通常与t同时使用
# -t :为容器重新分配各伪终端,通常与-i同时使用
# -P :随机端口映射,大写P
# -p :指定端口映射,小写p
启动centos镜像
bash
docker run -it --name=mycentos centos /bin/bash # 交互时启动,启动后进入容器内部
docker run -d -redis # 守护进程式启动,不进入容器
exit # 退出--》容器停止
ctrl+q+p # 退出--》容器继续运行
容器启动、停止、重启、强制停止
bash
docker start/stop/restart/kill [容器ID或名字]
删除容器
bash
docker rm [容器ID或者名字]
docker rm -f [容器ID或者名字] # 强制删除正在运行的容器
docker rm -f $(docker ps -qa) # 删除所有容器 慎用慎用慎用!!!!!!
查看容器日志
bash
docker logs [容器id、容器名]
查询容器运行情况
bash
docker top [容器id、容器名]
查看容器内部信息
bash
docker inspect [容器id、容器名]
进入正在运行的交互时容器
bash
docker exec -it [容器ID] /bin/bash # 启动新的进程进入容器,exit退出后容器不会停止
docker attach [容器ID] #进入容器不会启动新的进程,exit退出后容器停止
文件拷贝
容器内的文件拷贝到宿主机的根目录
bash
docker cp 5bbd16ffc156:/data/a.txt /
容器备份--导入
bash
docker export 5bbd16ffc156 > aa.tar #容器备份
cat aa.tar | docker import - testimport/centos:1.0 # 备份文件恢复成镜像