Docker架构
-镜像:相当于是一个root文件系统
-容器:镜像和容器的关系,就像是面向对象程序设计中类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
-仓库:仓库可看成一个代码控制中心,用来保存镜像
ununtu Docker安装:查看文档
Docker镜像加速:查看文档
Docker 允许你在容器内运行应用程序, 使用 docker run 命令来在容器内运行一个应用程序。
输出Hello world
docker run ubuntu:15.10 /bin/echo "hello world "
docker: Docker 的二进制执行文件。
run: 与前面的 docker 组合来运行一个容器。
ubuntu:15.10 指定要运行的镜像,Docker 首先从本地主机上查找镜像是否存在,如果不存在,Docker 就会从镜像仓库 Docker Hub 下载公共镜像。
/bin/echo "Hello world": 在启动的容器里执行的命令
安装:
1.进入root模式:sudo su
2.安装:apt install docker
3.查看安装后的版本:docker -v
4.启动与停止docker
启动docker:service docker start
停止docker:service docker stop
重启docker:service docker restart
查看docker状态:service docker status
开机启动:chkconfig docker on
查看docker概要信息:docker info
查看docker帮助文档:docker --help
镜像操作
1.列出docker下的所有镜像:docker images
2.参数说明:
REPOSITORY:镜像所在的仓库名称
TAG:镜像标签
IMAGE ID:镜像ID
CREATED:镜像的创建日期
SIZE:镜像大小
2 .OPTIONS说明:
-a:列出本地所有的镜像(含中间映像层)
-q:只显示镜像ID
--digests:显示镜像的摘要信息
--no-trunc:显示完整的镜像信息
4.这些镜像都是存储在docker宿主机的/var/lib/docker目录下
5.搜索镜像:docker search [OPTIONS] 镜像名字
6.参数说明:
NAME:仓库名称
DESCRIPTION:镜像描述
STARS:用户评价,反应一个镜像的受欢迎程度
OFFICIAL:是否官方
AUTOMATED:自动构建,表示该镜像由docker hub自动构建流程创建的
6.OPTIONS说明:
--no-trunc:显示完整的镜像描述
-s:列出收藏数不小于指定值的镜像
--automated:只列出automated build类型的镜像
7.使用命令拉取:docker pull 镜像名字
8.删除镜像:docker rmi -f 镜像ID
9.删除多个:docker rmi -f 镜像名1:TAG 镜像名2:TAG
10.删除全部:docker rmi -f $(docker images -qa)
容器
1.查看容器:docker ps [OPTIONS]
2.OPTIONS说明(常用):
-a :列出当前所有正在运行的容器+历史上运行过的
-l :显示最近创建的容器。
-n:显示最近n个创建的容器。
-q :静默模式,只显示容器编号。
--no-trunc :不截断输出
3.查看正在运行的容器:docker ps
4.查看所有的容器:docker pa -a
5.查看最后一次运行的容器:docker pa -l
6.查看停止的容器:docker pa -f status=exited
7.使用镜像centos:latest以交互模式启动一个容器,在容器内执行/bin/bash命令,并取名为mycentos
docker run -it --name=mycentos centos:7 /bin/bash
8.创建一个守护式容器:如果对于一个需要长期运行的容器来说,我们可以创建一个守护式容器
docker run -di --name=mycentos2 centos:7
9.登录守护式容器方式:
docker exec -it container_name (或者 container_id) /bin/bash(exit退出时,容器不会停止
10.停止正在运行的容器:
docker stop $CONTAINER_NAME/ID
11.启动已运行过的容器:
docker start $CONTAINER_NAME/ID
12.重启容器:docker restart 容器ID或者容器名
13.强制停止容器:docker kill 容器ID或者容器名
14.文件拷贝:docker cp 需要拷贝的文件或目录 容器名称:容器目录
15.也可以将文件从容器内拷贝出来
docker cp 容器名称:容器目录 需要拷贝的文件或目录
16.我们可以在创建容器的时候,将**宿主机的目录**与**容器内的目录**进行映射,这样我们就可以通过修改宿主机某个目录的文件从而去影响容器。
创建容器 添加-v参数 后边为 宿主机目录:容器目录
docker run -di --name=mycentos2 -v /usr/local/myhtml:/usr/local/myhtml centos:7
17.查看容器运行的各种数据
docker inspect mycentos3
17.也可以直接执行下面的命令直接输出IP地址
docker inspect --format='{{.NetworkSettings.IPAddress}}' mycentos3
172.17.0.2
18.测试宿主机连接容器:ping 172.17.0.2
19.删除容器
删除指定容器:docker rm $CONTAINER_ID/NAME
删除所有容器:docker rm `docker ps -a -q`
docker常用安装
1.安装tomcat
2.docker hub上面查找tomcat镜像
docker search tomcat
3.拉取镜像
docker rmi decker.io/tomcat
docker pull tomcat
4.查看镜像
docker images tomcat
5.启动镜像
docker run -it -p 8080:8080 docker.io/tomcat
-P 主机端口:docker容器端口
-P 随机分配端口
i:交互
t:终端
6.安装mysql
docker search mysql
docker pull docker.io/mysql
7.查看镜像
docker images mysql
8.启动镜像
docker exec -it MySQL运行成功后的容器ID /bin/bash
docker run -di --name mysql_0803 -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
-p 代表端口映射,格式为 宿主机映射端口:容器运行端口
-e 代表添加环境变量 MYSQL_ROOT_PASSWORD是root用户的登陆密码
9.进入mysql容器,登陆mysql
docker exec -it mysql_0803 /bin/bash
mysql -u root -p
10.mysql redis nginx配置及代理
11.重新启动容器
docker restart clever_goldwasser
docker常用命令总结(十)
最新推荐文章于 2024-07-29 17:14:25 发布