(1)Docker常用命令个人总结

关于安装

(1) 安装 Docker (如果使用的是 Docker 镜像,这步可省略)

yum install docker

systemctl start docker

systemctl enable docker

(2) 安装 Portainer 容器

docker volume create portainer_data

docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer

cd /usr/libexec/docker/

sudo ln -s docker-runc-current docker-runc

( 3 )在浏览器输入 公网IP:9000 就可以打开 Portaniner 安装界面。只需要设置管理员账户和密码,点击下一步;

( 4 )在新页面选择 Local 即可完成安装。

关于启动:

systemctl start docker       //启动docker

systemctl stop docker        //停止docker

systemctl restart docker     //重启docker

systemctl status docker      //查看docker状态

systemctl enable docker      //开机启动

docker info                  //查看docker概要信息

关于镜像:

docker images                //查看镜像 

docker search  镜像名称      //搜索镜像

docker pull 镜像名称         //拉取镜像

例如:我要下载centos7镜像

docker pull centos:7



docker rmi 镜像ID           //按镜像ID删除镜像

docker rmi `docker images -q`  //删除所有镜像

关于容器:

docker ps                    //查看正在运行的容器

docker ps -a                 //查看所有容器

docker ps -l                 //查看最后一次运行的容器

docker ps -f status=exited   //查看停止的容器

docker start/stop CONTAINER ID  //开始/停止容器(CONTAINER ID 是容器的ID) 
           
docker rm CONTAINER ID          //删除容器

docker kill CONTAINER ID        //直接关闭容器

创建与启动容器:

创建容器命令: docker run
-i: 表示运行容器

-t: 表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登陆进去。即分配一个伪终端

–name: 为创建的容器命名

-v: 表示目录映射关系(前者是宿主机目录,后者是映射到宿主机的目录),可以使用多个-v做多个目录或文件映射。
注意:最好做目录映射,在宿主机上做修改,然后共享到容器上

-d: 在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i -t 参数,创建后就会自动进入容器)

-p: 表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p做多个端口映射

(1)交互式方式创建容器

docker run -it --name=容器名称 镜像名称:标签 /bin/bash
例如:

docker run -it --name=mycentos centos:7 /bin/bash

exit //退出当前容器

(2)守护式方式创建容器

docker run -di --name=容器名称 镜像名称:标签
例如:docker run -di --name=mycentos2 centos:7

ll //查看容器目录

登录守护式容器方式:

docker exec -it 容器名称 (或者容器ID) /bin/bash

值得注意的一点是:交互式方式创建容器,exit退出后,容器运行装填相应自动退出

而守护式方式创建容器,并不会相应退出,仍然处于运行状态

停止与启动容器

docker stop 容器名称(容器ID) //停止容器

docker start 容器名称(容器ID) //启动容器

文件拷贝

docker cp 需要拷贝的文件和目录 容器名称:容器目录

例如:

docker cp get-docker.sh mycentos2:/usr/local

也可以将文件从容器内拷贝出来

docker cp 容器名称:容器目录 需要拷贝的文件或目录

例如:

docker cp mycentos2:/usr/local/get-docker.sh get-docker2.sh

MySQL部署

( 1 ) 拉取mysql镜像

docker pull centos/mysql-57-centos7

( 2 ) 创建容器

docker run -di --name=tensquare_mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

-p 代表端口映射,格式为宿主机映射端口:容器运行端口

-e 代表添加环境变量 MYSQL_ROOT_PASSWORD 是root用户的登陆密码

( 3)进入mysql容器

docker exec -it tensquare_mysql /bin/bash

( 4 ) 登陆mysql

mysql -u root -p

( 5 ) 远程登陆mysql

菜鸟教程: https://www.runoob.com/docker/docker-install-mysql.html

tomcat部署

(1)拉取镜像

docker pull tomcat:7-jre7

(2)创建容器

创建容器 -p表示地址映射

docker run -di --name=mytomcat -p 9000:8080 -V /usr/local/webapps:/usr/local/tomcat/webapps tomcat:7-jre7

Nginx部署

(1) 拉取镜像

docker pull nginx

(2)创建Nginx容器

docker run -di --name=mynginx -p 80:80 nginx

(1) 拉取镜像

docker pull redis

( 2 ) 创建容器

docker run -di --name=myredis -p 6379:6379 redis

Redis部署

(1) 拉取镜像

docker pull redis

(2) 创建容器

docker run -di --name=myredis -p 6379:6379 redis

迁移与备份

(1)将容器保存为镜像,mynginx指容器名,mynginx_image指镜像名

docker commit mynginx mynginx_image

(2)基于这个镜像,再创建一个容器

docker run -di --name=mynginx2 -p 81:80 mynginx_images

(3)镜像备份

docker save -o mynginx.tar mynginx_image

(4)将mynginx_image镜像删除之前,应该先删除mynginx2容器

docker rmi mynginx_image  (失败)

docker stop mynginx2

docker rm mynginx2

最后

docker rmi mynginx     (成功)

(5)镜像恢复

docker load -i mynginx.tar

Dockerflie常用命令

命令作用
FROM image_name:tag定义了使用哪个基础镜像启动构建流程
MAINTAINER user_name声明镜像的创建者
ENY key value设置环境变量(可以写多条)
RUN command是Dockerfile的核心部分(可以写多条)
ADD source_dir/file dest_dir/file将宿主机的文件复制到容器内,如果是一个压缩文件,将会在复制后自动解压
COPY source_dir/file dest_dir/file和ADD相似,但是如果有压缩文件并不能解压
WORKDIR path_dir设置工作目录

具体实例参考第三篇文章:https://blog.csdn.net/weixin_42467515/article/details/97031370

Docker私有仓库

私有仓库搭建和配置:请查看第四篇文章:https://blog.csdn.net/weixin_42467515/article/details/97097880

参考链接:

Docker管理工具的镜像部署和使用、运维实战指南
参考链接:http://help.websoft9.com/docker-guide/default.html(重点)

Failed to start docker.service: Unit not found(Docker服务起不来)
参考链接:https://blog.csdn.net/qq_34508530/article/details/84989990

(Job for docker.service failed because the control process exited with)的解决方案
参考链接:https://blog.csdn.net/YooFale/article/details/84900712

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值