目录
Docker的安装
1-1、Linux
yum install -y docker
这种方式安装是自动添加了服务项并自启动,服务名:docker;
默认镜像库地址在境外,内地下载速度太慢,这里提供一种修改为阿里云的方式
vi /etc/docker/daemon.json
>>>>
{ "registry-mirrors": ["https://0zpp5kfv.mirror.aliyuncs.com"] }
>>>>
systemctl daemon-reload && service docker restart
1-2、Windows/Mac
Docker的核心组件
1、镜像
--Centos、应用程序都属于一个镜像,其中应用程序的理解上拿Tomcat举例:Tomcat的镜像中自动就包含了Linux系统镜像+Jdk环境+Tomcat应用程序;一个Docker可以有上多个镜像。
2、容器
--"复制"镜像而成的一个完全隔离的容器,用克隆的形容应该容易理解点儿,镜像是本体,而容器就是克隆人,而克隆人可以独立的生活;容器也是一样,每个容器可以再在已有的基础之上再进行搭建新应用。
Docker的管理
1、镜像的管理
命令 | 作用 | 说明 |
---|---|---|
docker images | 查看已有的本地镜像 | |
docker pull 镜像[:version] | 从远程库拉取镜像 | 示例:docker pull tomcat:7-jre8-alpine 其中的:7-jre8-alpine为版本,不指定版本时默认拉取最新的 镜像获取地址:Docker Hub |
docker rmi 镜像ID | 删除本地镜像 |
2、容器的管理
命令 | 作用 | 说明 |
---|---|---|
docker ps [option] | 查看已有的本地容器 | [option] 默认为只查看运行中的容器 -a 查看所有的容器 结果解析:其中的status为up时说明运行中;为exited为停止 |
docker run [option1] [option2] 镜像[:version] [command] | 新建容器 | [option1] -t 分配一个伪终端,往往和i配合使用 -i 打开容器的标准输入/通过-t的终端进行输入 -d 后台启动/daemon 可以组合使用 [option2] 配置类,用于端口映射和配置修改等 例1:docker run -p 5577:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7 例2:docker run -itd --name jenkins/jenkins --net=host -d --privileged=true --restart=always jenkins:20220117 /bin/bash |
docker logs 容器ID | 查看容器日志 | |
docker attach [option1] 容器ID docker exec [option1] 容器ID | 进入容器/-ti | 常用示例:docker exec -it -u 0 bc09d6bb57c5 /bin/bash 退出容器而不停止:Ctrl+P+Q 退出并停止容器:exit |
docker start/stop 容器ID | 启动/停止容器 | |
docker rm [option] 容器ID | 删除容器 | [option] -f:强制删除 其他用法 全删:docker rm -f $(docker ps -aq) |
docker inspect 容器ID | 查看容器信息 | |
docker export 容器ID > name.tar | 导出容器 | |
cat name.tar | docker import - 自定义镜像名[:version] | 导入容器为镜像 | 需要注意的是导入后不是容器,而是镜像 |
使用示例过程
1、从远程库拉取镜像
docker pull centos:7.1.1503
2、新建容器并使用拉取的镜像并进入镜像控制台
docker run -dit centos:7.1.1503
若需真实的root权限,如下
docker run -dit --privileged=true centos:7.1.1503 /usr/sbin/init
注意控制台的变化,如下图
然后就可以在里面按照常规配置部署想要的环境了
由于docker拉取的镜像比较精简,因此把常用的功能加上
yum install -y --skip-broken initscripts wget vim net-tools
然后就可以在docker容器中操作了………………
其他说明
上文命令等各处说明均只列出常用的,如需更详细的可以通过各项命令的--help进行查看,例如docker rm --help……