当前位置:   article > 正文

Docker基本使用【数据卷的挂载及常用命令】

Docker基本使用【数据卷的挂载及常用命令】

镜像和容器:当我们利用docker安装应用时,Docker会自动搜索并下载应用的镜像(image),镜像不仅包含应用本身还包含应用所需要的环境、配置、系统函数库。Docker会在运行镜像时创建一个隔离的环境,称为容器(container)

一键部署mysql

输入以下命令:

docker run -d --name mysql -p 3306:3306 -e TZ=Asia/Shanghai -e MYSQL_ROOT_PASSWORD=密码 mysql

命令解读:

  • docker run :创建并运行一个容器,-d是让容器在后台运行

  • --name mysql:给容器起一个名字,叫mysql,必须唯一

  • -p 3306:3306:设置端口映射,前面是宿主机端口,后面是容器内端口,容器内端口取决于进程,不需要改动,宿主机端口可以改动

  • -e :设置环境变量,参数类型为KEY=VALUE,可以设置多个,环境由要安装应用的官方提供

  • mysql:指运行镜像的名字,一般由两部分组成,镜像名:镜像版本,不写版本默认最新版本

常用镜像命令

忘记命令时可以使用--help查看

1)查看安装的镜像:

docker images

2)下载指定镜像:从docker仓库下载指定镜像,也叫拉取和git相同

docker pull 镜像名

3)打包指定镜像:

docker save -o 打包的包名 要打包的镜像名:版本号

4)删除指定镜像:

docker rmi 镜像名:版本

5)解析打包的镜像:

docker load -i 包名 -q
  • -i :后跟要解析的包名

  • -q :不要输出信息,可选

常用容器命令

1)创建容器:

docker run -d --name 容器名 -p 宿主机端口:进程端口(容器内) 镜像名称
  • -d:表示后台运行,一般不省略

  • --name :后跟容器名

  • -p :后跟端口映射

  • -e :环境变量,可选

  • 命令最后添加镜像名称

2)查看运行的容器:

docker ps

3)查看所有容器:

docker ps -a

4)停止容器:

docker stop 容器名

5)启动容器:

docker start 容器名

6)查看日志:

docker logs -f 容器名
  • -f:持续输出日志信息

7)进入容器:一个容器就模拟了一个操作系统

docker exec -it 容器名 bash
  • -it:表示添加一个可输入的终端,后跟容器名

  • bash:交互方式,bash表示命令行交互方式

8)删除容器:

docker rm 容器名

注意:删除运行的容器时会提示报错,有两种办法:1、停止在删除,2、容器名后面添加-f参数进行强制删除

9)查看容器详情:

docker inspect 容器名

数据卷

数据卷:是一个虚拟目录,是容器内目录与宿主机目录之间映射的桥梁,由于使用docker exec 命令进入指定容器中没法使用vi命令修改文件信息,所以使用数据卷进行一系列操作。注意:创建数据卷时,首先进行数据挂载

常用命令

使用docker volume --help查看命令使用方法和提示

命令说明
docker volume create创建数据卷
docker volume ls查看数据卷
docker volume rm删除指定数据卷
docker volume inspect 数据卷名查看数据卷的详情
docker volume prune清除数据卷

数据挂载

1)第一种挂载方式:

在执行docker run 命令时,使用 -v 数据卷:容器内目录 可以完成数据卷的挂载,当创建容器时,如果挂载了数据卷且数据卷不存在,会自动创建数据卷,如果创建时不指定数据挂载,系统也会自动创建数据挂载,创建一个很长名字的数据卷

eg:创建nginx容器并创建数据挂载

docker run -d --name nginx -p 80:80 -v html:/usr/share/nginx/html nginx
  • html:表示创建的数据卷的名字

创建完成后使用docker volume inspect 数据卷名命令查看宿主机的目录文件,进行操作

2)第二种挂载方式:

在执行docker run 命令时,使用 -v 本地目录:容器内目录 可以完成本地目录的挂载,注意:本地目录必须以/或者./开头,如果直接以名称开头,会被识别为数据卷而非本地,这种挂载方式还需要挂载配置文件和初始化脚本

eg:创建nginx容器并创建数据挂载

docker run -d --name nginx -p 80:80 -v ./html:/usr/share/nginx/html nginx
  • ./html:表示创建本地数据挂载的名字

  • 注意:这种挂载方式可以实现数据的持久保存,推荐使用这种挂载方式

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/128432
推荐阅读
相关标签
  

闽ICP备14008679号