Docker基础学习(配置、命令)

镜像加速

登录阿里云

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 # 备份文件恢复成镜像
相关推荐
程序员小李_1 分钟前
心理——《在绝望中寻找希望:俞敏洪写给迷茫不安的年轻人》
学习
向上的车轮5 分钟前
Django学习笔记四:urls配置详解
笔记·学习·django
新手unity自用笔记33 分钟前
项目-坦克大战学习笔记-按键按下控制方向
笔记·学习·c#
瞌睡不来1 小时前
(刷题记录5)盛最多水的容器
c++·笔记·学习·题目记录
一 乐1 小时前
考研论坛平台|考研论坛小程序系统|基于java和微信小程序的考研论坛平台小程序设计与实现(源码+数据库+文档)
java·数据库·学习·考研·微信·小程序·源码
William_Edmund2 小时前
C++ 算法学习——1.8 悬线法
学习
朝九晚五ฺ2 小时前
【Linux探索学习】第三弹——Linux的基础指令(下)——开启新篇章的大门
linux·运维·学习
IM_DALLA2 小时前
【Verilog学习日常】—牛客网刷题—Verilog企业真题—VL74
学习·fpga开发·verilog学习
王俊山IT3 小时前
C++学习笔记----8、掌握类与对象(五)---- 嵌套类与类中枚举
开发语言·c++·笔记·学习
北极无雪3 小时前
Spring源码学习(拓展篇):SpringMVC中的异常处理
java·开发语言·数据库·学习·spring·servlet