docker 常规使用命令整理

查看docker 版本:docker version

查看各镜像版本:docker search xxx

拉取镜像:docker [image] pull  xxx[:version]  (默认拉取最新版)

拉取指定仓库镜像:docker pull ip:5000/name

查看已安装的镜像:docker images,docker image ls

查看运行中的容器:docker ps

查看运行过的容器:docker ps -a

删除镜像:docker rmi  name

开启自动启动容器:docker update containerId  --restart=always

ubuntu启动docker:

systemctl start docker
systemctl daemon-reload
systemctl start docker.service

运行容器:

nginx:  docker run -itd --name my_nginx -p 80:80 \ 
        -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
        -v /data/nginx/log:/var/log/nginx \
        -v /data/nginx/html:/usr/share/nginx/html \
        -v /data/nginx:/data/nginx \
        nginx

mysql:  docker run --name mysql8 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
        进入mysql 容器:docker exec -it mysql8(id或名称) bash

redis:  docker run -itd  --name redis -p 6378:6379  \
        -v /data/redis/conf/redis.conf:/etc/redis/redis.conf \
        -v /data/redis/data:/data \
        redis-server /etc/redis/redis.conf  \
        --appendonly yes \
        redis
        进入reids容器: docker exec -it reids /bin/bash        

java:   docker run -it --name javatest -v /opt/:/opt -d java 启动并挂载目录

安装mysql8:

1,查找镜像:docker search mysql

2,拉取镜像:docker pull mysql(默认拉去最新),docker pull mysql:8.0

3,安装运行:docker run --name mysqltest \ -p 3307:3306 -e MYSQL_ROOT_PASSWORD=root \ -d mysql

4,进入容器:docker exec -it mysqltest bash

5,查看msyql配置文件路径:mysql --help | grep my.cnf

6,查看容器信息:docker inspect xxxx

7,创建挂载目录:mkdir -p /home/docker/mysql/conf && mkdir -p /home/docker/mysql/datadir

8,拷贝msyql 配置,到主目录:docker cp mysqltest:/etc/mysql/my.cnf /home/docker/mysql/conf

9,停止旧容器,启动新容器:docker run --name mysql8 \ -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root \ --mount type=bind,src=/home/docker/mysql/conf/my.cnf,dst=/etc/mysql/my.cnf \ --mount type=bind,src=/home/docker/mysql/datadir,dst=/var/lib/mysql \ --restart=on-failure:3 \ -d mysql:8.0

删除容器:docker rm [-f] id

停止容器:docker stop id

启动一个停止的容器:docker start id

重启容器:docker restart id

导出容器快照:docker export id >xxx.tar

导入快照xxx.tar到test/ubuntu:v1镜像:cat docker/xxx.tar | docker import - test/ubuntu:v1

创建镜像基于Dockerfile: docker build -t name .

推荐镜像源:/etc/docker:{"registry-mirrors": ["https://registry.docker-cn.com","http://hub-mirror.c.163.com"]}

查看容器实时日志:docker logs -f id

进入容器:docker exec -it xxx bash

安装本地镜像源仓库:

1,拉取镜像:docker pull registry

2,创建本地仓库目录:mkdir /usr/local/docker_registry

3,启动容器:docker run -d -p 5000:5000 --name=jackspeedregistry --restart=always --privileged=true  -v /usr/local/docker_registry:/var/lib/registry  docker.io/registry

 解释:
  -p 5000:5000 端口
  --name=jackspeedregistry 运行的容器名称
  --restart=always 自动重启
   --privileged=true centos7中的安全模块selinux把权限禁止了,加上这行是给容器增加执行权限
  -v /usr/local/docker_registry:/var/lib/registry 把主机的/usr/local/docker_registry 目录挂载到registry容器的/var/lib/registry目录下,假如有删除容器操作,我们的镜像也不会被删除
  docker.io/registry  镜像名称

查看镜像列表:curl http://ip:5000/v2/_catalog

国内加速地址有:
Docker中国区官方镜像
https://registry.docker-cn.com
网易
http://hub-mirror.c.163.com
ustc 
https://docker.mirrors.ustc.edu.cn
中国科技大学
https://docker.mirrors.ustc.edu.cn
阿里云容器  服务
https://cr.console.aliyun.com/

切换镜像源:修改或新增/etc/docker/daemon.json

{ "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn","https://cr.console.aliyun.com","http://localhost:5000"] }

     

  

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值