docker volumns

Posted mjxi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker volumns相关的知识,希望对你有一定的参考价值。

管理卷

docker volumns create nginx_lc # 建立的这个路径会映射到/var/lib/docker/volumns/nginx_lc目录下

docker volumns ls

docker volumns inspect nginx_lc # 查看数据卷的定义

用卷创建一个容器

docker run -d -it --name=nginxt1 --mount src=nginx_lc,dst=/usr/share/nginx/html nginx ## 建议这种方式

docker run -d -it --name=nginxt2 -v nginx_lc:/usr/share/nginx/html nginx  ## 不建议使用这种方式

清理:

docker container stop nginxt1

docker container rm nginxt1

docker volumns  rm  nginxt1

注意:

如果没有制定src参数,则会创建一个匿名卷

建议使用 --mount ,这种方式更通用

### BING MOUNT  绑定宿主机已经存在的目录,给容器做挂载

## 用卷创建一个容器

docker run -d -it --name=nginxt3 --mount type=bind,src=/app/www,dst=/usr/share/nginx/html nginx

docker run -d -it --name=nginxt4 -v /app/www:/usr/share/nginx/html nginx

验证绑定

docker inspect nginxt3

清理:

docker container stop nginxt3

docker container rm nginxt3

## 注意:

1. 如果源文件/目录不存在,不会自动创建,回报错

2. 如果挂载目标在容器中非空目录,则该目录先有内容将被隐藏

###   搭建LNMP 环境

先创建volumns  

docker volumns create mysql-vol

建立自定义网络

docker network create lnmp

1. 创建mysql数据库容器

docker run --itd

--name lnmp_mysql

--net lnmp

-p 3306:3306

--mount src=mysql-vol,dst=/var/lib/mysql

-e MYSQL_ROOT_PASSWORD=123456

mysql --character-set-server=utf8

2. 创建所需数据库

docker exec lnmp_mysql sh

-c ‘exec mysql -uroot -p"$MYSQL_ROOT_PASSWORD" -e "create database wp"‘

3. 创建php环境容器

docker run -d -it

--name lnmp_web

--net lnmp

-p 80:80

--mount type=bind,src=/app/www,dst=/var/www/html richarvy/nginx-php-fpm

4. 以某个博客为例子

wget https://cn.wordpress.org/wordpress-4.7.4-zh_CN.tar.gz

tar zxvf  www.tar.gz -C /app/www

最后用浏览器访问

http://HSOTIP/wordpress

注意:

服务器的iptables需要添加过滤规则

iptales -I INPUT -p tcp -s 0.0.0.0/0 -d 0.0.0.0/0 -j ACCEPT

 

以上是关于docker volumns的主要内容,如果未能解决你的问题,请参考以下文章

Docker教程-1-学习及安装Docker

Docker教程-1-学习及安装Docker

Docker03 Docker基础知识Docker实战

Docker学习__docker命令[docker version 和 docker info]

[转帖]Docker里运行Docker docker in docker(dind)

docker 定时清理docker容器日志