1.docker search命令使用
#搜索是否有redis镜像
docker search redis
#NAME表示镜像名称
#DESCRIPTION表示对镜像的描述
#STARS表示收藏星星数
#OFFICIAL表示此镜像是否是官方的
#AUTOMATED表示是否为自动构建的
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
redis Redis is an open source key-value store that… 10004 [OK]
sameersbn/redis 83 [OK]
2.docker pull 命令使用
#从镜像仓库把redis镜像拉下来
docker pull redis
#成功拉取下来之后,可通过docker images查看本地的镜像
docker images
或
docker images redis
或
docker images |grep redis
3.docker rmi命令使用
#删除redis镜像
docker rmi redis
4.docker run命令使用
#创建并启动一个容器
#-p 2379:6379 表示将容器里面的6379端口映射为宿主机的2379端口
#-v /data/redis/9001/redis9001.conf:/usr/local/etc/redis/redis.conf 表示将宿主机的/data/redis/9001/redis9001.conf挂载到/usr/local/etc/redis/redis.conf
#--restart always 容器down掉后,会自动重启
#--name redis-test 指定容器的名称
#-it表示容器启动后会进入其命令行,与it一起使用。分配一个伪tty设备,可以支持终端登录(对于没有守护的进程,在docker run的时候需要加-it参数,否则启动后会自动退出。比如redis和nginx等服务,run了容器然后exit退出后,整个容器都会stop掉的,需要加上it参数让容器继续运行)
#-d 让容器在后台运行并打印容器的ID
docker run -itd -p 2379:6379 -v /data/redis/9001/redis9001.conf:/usr/local/etc/redis/redis.conf --restart always --name redis-test redis:latest
#查看存于启动中的容器
docker ps
#查看所有容器(已停止,启动中等所有的容器)
docker ps -a
#停止一个指定容器
docker stop 容器id
#启动一个指定容器
docker start 容器id
#暂停一个容器
docker pause 容器id
#重启一个容器
docker restart 容器id
#kill掉指定容器
docker kill 容器id
docker kill --signal=9
5.docker资源监控命令使用
#查看所有容器使用服务器资源情况
docker stats
#查看指定容器内服务的资源使用情况
docker top 容器id
#查看指定容器端口映射情况
docker port 容器id
#查看指定容器的详细信息
docker inspect 容器id
6.docker logs 查看容器日志命令使用
docker logs --tail 500 redis-test
docker logs --tail 500 -f redis-test
#因容器产生的日志较多,所以需对日志大小和数量进行配置,然后重启下docker
#日志最大为500M,最多为3个日志文件
vim /etc/docker/daemon.json
{
"log-driver":"json-file",
"log-opts": {"max-size":"500m", "max-file":"3"}
}
7.宿主机和容器进行连接
docker exec --it 容器id /bin/bash
8.容器时间校验
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
9.文件复制
#将指定容器内的文件复制到本地
docker cp 容器名:/容器目录/文件名 /宿主机目录/文件名
#将本地文件复制到指定容器
docker cp /宿主机目录/文件名 容器名:/容器目录/文件名
10.docker update 更新容器信息
#已创建的容器,需要修改容器启动的参数
#本来容器启动命令
docker -itd -p 36379:6379 --name my-redis redis
#更新容器端口映射
docker update -p 36379:6379 my-redis
11.docker commit 从容器创建一个新的镜像
#从指定容器创建一个新的镜像出来
docker commit -a "author" -m "message" container_name/container_id new_image_name:tag_name
参数说明
-a:参数可选,用于指定作者,可以写你的名字
-m:参数可选,提交信息,可以说一下你做了哪些修改
container_id:该参数为被修改的容器ID
new_image_name:此为新镜像的名字,可自定义
tag_name:此为新镜像的标签,可不写,不写时标签默认为latest
12.docker 网络和dns配置
docker网络默认包含bridge、none、host三种类型
docker network ls #查看docker上启动了哪些网络类型
docker run --name t1 -it --network bridge -h czy --dns 114.114.114.114 --rm centos
#创建一个容器,这个容器的网络为bridge网络,
#--network 指定网络类型
#--rm当退出容器时,会清空容器里所有数据
#-h 指定容器主机名,如果不指定,默认主机名为容器id
#--dns 指定容器dns
指定容器网络段和dns
cat /etc/docker/daemon.json
{
"registry-mirrors": ["https://scz1kw3g.mirror.aliyuncs.com"],
"bip":"192.168.0.1/24", #指定网桥IP
"dns":["192.168.209.2","114.114.114.114"] #指定容器dns
}
#只要指定网桥的ip就可以了,创建容器的时候,就会根据网桥的网络段进行IP分配的了。
#重启下docker服务
systemctl daemon-reload
systemctl restart docker
最后编辑于 :2021.10.08 19:44:41
©著作权归作者所有,转载或内容合作请联系作者 【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。 平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。