Docker的基础知识

1.docker的镜像

# 搜索镜像的名称
$ docker search nginx

# 拉取镜像
$ docker pull nginx

#从registry仓库提交镜像 docker push + 仓库名称
$ docker push mydjango:v1

# 查看本地镜像,-a包括删除的
$ docker images -a

# 使用dockerfile构建镜像,docker build + 目录,.代表当前目录,-t表示加标签
$ docker build -t mydjango:2.0

#查看镜像历史
$docker history 镜像名称

#删除未标记或用过的镜像
$ docker rmi mydjango:1.0 mydjango:2.0

#删除未标记或未用过的镜像
$ docker image prune -a

#镜像加标签: docker tag 镜像标签 镜像标签名
$ docker tag mydjango:1.0 django

#把镜像保存.tar文件 docker save 镜像>文件
$ docker save mydjango:1.0 >mydjano_1.0.tar

#从.tar文件载入镜像: docker load -i .tar文件 
$ docker load -i mynginx_v1.tar

#根据容器镜像:docker commit 容器名 镜像名
$docker commit

2.docker的容器

#创建容器
$docker create --name mydjango_1 -it -p 8080:80 mdjango:1.0

# 各选项含义
# -i:以交互模式运行容器,通常与-t 同时使用;
# -d:后台运行容器,并返回容器ID;
# -p:端口隐射, 宿主机在前,容器在后
# -P:随机映射宿主机端口
# -t:为容器重新分配一个伪输入终端,通常与-i 同时使用;
# -v:目录挂载
# --entrypoint: 指定进入点
# --restart=always: 服务重启

#启动容器
$docker start mydjango_1

#创建+运行容器
$docker run --name mydjango_1 -it -p 8080:80 mydjango:1.0
$docker run -it ubuntu /bin/bash

#查看正在运行中的容器,-a包括停止运行的容器
$docker ps -a

#停止一个正在容器
$docker stop mydjango_1

#重启容器
$docker restart mydjano_1

#容器重命名
$docker rename mydjano_1 mydjano_2

#删除容器
$docker rm my_django1

#强制删除一个正在运行
$docker rm -f mydjango_1

#删除已停止运行的所有容器
$docker container prune

#拷贝文件
$docker cp index.html mydjano_1:/index.html

#进入运行的容器
$docker exec -it mydjango_1 /bin/bash

#查看容器端口
$docker port mydjango_1


#查看容器内已修改文件
$docker diff mydjango_1

#查看容器日志
$docker logs web

#查看容器内运行进程
$docker top web

#查看容器的信息
$docker inspect web

#利用inspect查看容器的ip地址
$docker inspect web | grep 'IPAddress'

#查看容器的统计数据:docker stats
$docker stats

#基于容器创建镜像
$docker commit -m '改动信息' -a '作者' 容器id 镜像名称:标签名称
操作命令(全)命令(简)
容器的创建docker container run docker run
容器的列出(up)docker container lsdocker ps
容器的列出(up和exit)docker container ls -adocker ps -a
容器的停止docker container stop docker stop
容器的删除docker container rm docker rm

3.docke的存储

#创建数据卷
$ docker run -itd --name 容器名称 -v 宿主机目录:容器目录 镜像名称
#创建一个数据卷容器
$ docker create -v 容器目录 --name 容器名称 镜像名称
#创建两个容器,同时挂载数据卷容器
$ docker run --volumes-form 数据卷容器id/name -tid --name 容器名称 镜像名称
# 列出所有数据卷
$ docker volume ls
# 使用过滤,列出所有未使用的数据卷
$ docker volume ls --filter dangling=true
# 删除一个数据卷,器正在使用的数据卷不能删除
$ docker volume rm <volume_name>
# 删除未在使用的数据卷
$ docker volume prue
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值