docker基础

docker

一、镜像

镜像:创建容器的模板

1.获取

格式:docker pull [镜像仓库URL]/[命名空间名称]/[仓库名称]:[镜像版本号]

docker pull docker.io/library/busybox:latest

URL:docker.io
命名空间:library
仓库名称:busybox
版本号:latest

2.登录

docker login [参数][镜像仓库URL]

3.获取本机镜像

docker images 或 docker image ls [参数]

参数:
-a:显示所有的镜像(包括临时镜像文件)
[root@Centos7 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx v1 c2cdc1ab144d 21 hours ago 133MB
nginx latest bc9a0695f571 6 days ago 133MB
mysql latest dd7265748b5d 10 days ago 545MB
nginx 1.19.2 7e4d58f0e5f3 2 months ago 133MB

列表参数:
REPOSITORY : 仓库名称
TAG: 版本号
IMAGE ID:镜像ID
CREATED : 时间段
SIZE : 镜像体积

参数:
-q:只显示镜像ID

4、推送镜像

docker push [镜像仓库URL]/[命名空间名称]/[仓库名称]:[版本号]

5、给镜像打 TAG

docker tag [原镜像仓库URL]/[原镜像命名空间]/[原镜像仓库名称]:[版本号] [新镜像仓库URL]/[新镜像命名空间]/[新镜像仓库名称]:[版本号]

6、获取镜像的详细信息

docker inspect [镜像ID|镜像名称:版本号]
参数:
-f:可以使用golang的模板获取所需信息

7、查看镜像历史

docker history [镜像名字:镜像版本号| 镜像id]

8、搜索镜像

docker search [所搜索的镜像名称]
列表参数:
NAME:仓库名称
DESCRIPTION:描述
STARS:收藏个数
OFFICIAL:是否是官方镜像
AUTOMATED:是否是自构建的镜像

命令行参数:
-f:过滤
docker search python -f stars =30

9、删除与清理镜像

1.删除:

docker rmi [镜像名称:版本号 | 镜像ID]
参数:
-f: 强制删除

2、清理镜像:

docker image prune [参数]
参数:
-a:[all]清理所有没有被使用的镜像

3.保存镜像

docker commit [参数][容器ID | 容器名称:版本号]
参数:
-a:维护者
-m:简介
-p:保存镜像时,镜像暂停运行

二:容器

容器 : 创建对外服务的实例

1、运行一个容器

docker run [参数][镜像名称|镜像ID][执行的命令(默认执行指定的命令)]
参数:
-d:以守护进程的方式运行
-p:指定端口映射(格式:宿主主机端口:容器向外暴露的端口)
docker run -d -p 8899:80 nginx:1.19.2
-P:随机端口映射
docker run -d -P nginx:1.19.2
–name: 指定容器的名称(同一台宿主主机上的docker名称不能重复)
docker run -d --rm --name nginx_rm nginx:1.19.2
-v: 映射存储卷(可以映射文件及文件夹)
docker run -d -v /root/test:/usr/share/nginx/html nginx:1.19.2
-i : 打开标准输出
-t : 创建一个伪准端
-e : 在容器内设置一个环境变量
docker run -d -e NGINX_NAME=nginx nginx:1.19.2

docker 当中至少有一个应用程序运行在前台

2、停止容器

docker stop [容器名称|容器ID]

docker stop ngix_name

-d : 以守护进程的方式运行
-p : 映射固定端口
-P : 映射随机端口
-i : 打开标准输出
-t : 创建一个伪终端
-rm : 当一个容器结束了它的生命周期,就立即删除
–name: 设置一个容器的名称
将容器的名称解析到Docker DNS
-e : 设置一个容器内的环境变量
-v : 挂载一个文件或目录到容器内

docker pull [仓库URL]/[命名空间名称]/[仓库名称]:[版本号]

docker history [仓库URL]/[命名空间名称]/[仓库名称]:[版本号]

docker inspect [仓库URL]/[命名空间名称]/[仓库名称]:[版本号] 或 [IMAGE ID]
参数:
-f : 用golang语言模板语法获取镜像相关信息

docker ps : 查看正在运行的容器
参数:
-a : 查看容器(包括已经停止了的容器)
-q : 只查看容器ID

docker stop [容器名或ID]
docker stop $(docker ps -q)

三 、仓库 : 存放镜像的地方

四、导入导出镜像

1、export和import

export保存镜像是针对于容器的

docker export [容器名或ID] > [压缩包名称]

import 针对的是export保存的压缩包

docker import [压缩包名称][镜像名称]:[版本号]

1.针对export导出的压缩包
2.可以自定义镜像名称

2save和load

save保存镜像是针对于镜像

docker save [镜像名或ID] > [压缩包名称]

docker save -o [压缩包名称] [镜像名称或ID…]

1.当使用镜像ID保存镜像,导入时没有镜像名称
2.可以同时保存多个镜像

docker load < [压缩包名称]

1针对save保存的压缩包
2不能自定义名称
3.save保存的更完整

五.进入容器

docker attach [容器名或ID]
docker exec [参数][容器名或ID][命令]

复制
#从容器内复制到宿主主机
docker cp [容器ID:容器内文件路径]宿主主机路径

从宿主主机复制文件到容器
docker cp 宿主主机路径 [容器内文件路径]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值