Docker入门教程和常用命令

一、初始docker

1、 开发环境、测试环境、生产环境;
2、 开源应用容器引擎;开发者打包应用以及依赖包到一个轻量级、可移植的容器中,避免软件跨环境迁移问题。
容器使用沙箱机制,相互隔离;容器性能开销极低。
3、安装docker(CE为社区版,EE为企业版)
菜鸟教程
官网:
https://www.docker.com
其他参考链接:
https://blog.csdn.net/jinking01/article/details/82490688
ubantu16.04安装:https://cloud.tencent.com/developer/article/1501447
在这里插入图片描述
卸载有时候卸载不完全,参考链接:https://blog.csdn.net/qq_45495857/article/details/113743109

4、docker架构
在这里插入图片描述
客户端 守护进程 本机 远程
容器 : 镜像是静态的定义,镜像运行的实体,类似于类和对象的定义。容器可以被创建、启动、停止、删除和暂停等。
镜像 :相当于一个root文件系统;
仓库:看成一个代码控制中心,用来保存镜像。
5、配置Docker镜像加速器
在这里插入图片描述
阿里云比较快。
登录->控制台,产品与服务搜索镜像->容器镜像服务->镜像加速器->根据教程粘贴复制。

二、docker命令

1、服务相关命令
systemctl start docker
systemctl enable docker
systemctl restart docker
systemctl status docker
systemctl stop docker
2、镜像相关命令
查看镜像:
docker images
搜索镜像:
docker search redis
拉取镜像:
docker pull redis:5.0
查版本到hub.docker.com查redis版本
删除镜像:
docker rmi 对应的id
docker rmi redis:latest
docker imagers -q 查看所有镜像的id
docker rmi 'docker imagers -q ’
3、容器相关命令
创建容器:
docker run -i -t --name c1 centos:7 /bin/bash
(i 一直运行 -t终端 name名字 镜像版本 初始化命令)
自动进入容器
exit 退出容器
交互式容器

docker run -id --name c2 centos:7
以守护模式运行容器,守护式容器
进入容器:
docker exec -it c2 /bin/bash
exit 不会关闭

查看容器:
docker ps 查看正在运行的容器
docker ps -a 查看历史的容器
启动容器:
docker start 容器名称
停止容器:
docker stop c2
删除容器:
docker rm 容器id/名称
docker ps -aq 查看所有容器id
docker rm 'docker ps -aq ’ 删除所有容器,无法删除正在运行的容器
查看容器信息:
docker inspect

三、docker容器的数据卷

1、数据卷概念
数据卷是宿主机中的一个目录或文件。
当容器目录和数据卷目录绑定后,对方的修改会立即同步。
一个数据卷可以被多个数据卷挂载
一个容器可以挂载多个数据卷
作用:
容器数据持久化;外部机器和容器间接通信;容器之间数据交换。
在这里插入图片描述
2、配置数据卷
docker run … -v 宿主机目录:容器内目录
绝对路径;不存在自动创建;可以挂载多个数据卷;
docker run -it --name c1 -v /root/data:/root/data_container centos:7 /bin/bash
3、数据卷容器
多容器进行数据交换:多个容器挂载同一个数据卷;数据卷容器;
在这里插入图片描述
1、启动c3数据卷容器,使用-v参数设置数据卷
docker run -it --name c3 -v /volume centos:7 /bin/bash
2、volume容器目录,在宿主机中自动分配一个数据卷目录
docker run -it --name c1 --volumes-from c3 centos:7 /bin/bash
3、启动c1、c2容器,使用–volumes-from参数,设置数据卷
docker run -it --name c1 --volumes-from c3 centos:7 /bin/bash

四、docker应用部署

1、MySQL部署
**步骤:**搜索mysql镜像、拉取mysql镜像、创建容器、操作容器中的mysql
端口映射:当容器中的网络服务需要被外部机器访问时,可以将容器中提供服务的端口映射到宿主机的端口上。外部机器访问宿主机的该端口,从而访问容器中的服务。

内容来源于网络整理和参考链接,侵权联系删~

猜你喜欢

转载自blog.csdn.net/qq_41667348/article/details/123156863
今日推荐