手机搭建平台网站,化工厂建设网站,做seo排名好的公司,建设网站建设公司注意#xff1a;在容器内修改文件是不推荐的。
1.修改不方便#xff0c;比如vi命令都无法使用。
2.容器内修改#xff0c;没有日志记录的。
问题#xff1a;那应该如何修改容器中的文件呢#xff1f;
数据卷
volume是一个虚拟目录#xff0c;指向宿主机文件系统中的…注意在容器内修改文件是不推荐的。
1.修改不方便比如vi命令都无法使用。
2.容器内修改没有日志记录的。
问题那应该如何修改容器中的文件呢
数据卷
volume是一个虚拟目录指向宿主机文件系统中的某个目录。 数据卷的作用
将容器和数据分离解耦合方便操作容器内的数据保证数据安全。
数据卷的命令
docker volume 命令的使用 创建数据卷命令
docker volume create 数据卷名称
列出所有的数据卷命令
docker volume ls
查看某个数据卷的命令
docker volume inspect 数据卷名称 删除没有使用的数据卷命令
docker volume prune 删除指定名称的数据卷命令
docker volume rm 数据卷名称 将数据卷挂载到容器中
通过-v参数来挂载
docker volume create html
docker volume ls
docker volume inspect html
docker run --name mynginx -p 8080:80 -d -v html:/usr/share/nginx/html nginx /var/lib/docker/volume/html/_data 映射 nginx容器内部目录 /usr/share/nginx/html 可以发现目录下多出两个文件更容器内目录下的文件一样。
这个时候就可以在宿主机目录下方便的对文件进行修改了。 如果容器创建并启动的时候-v指定的数据卷不存在docker容器很智能会自动的帮你创建数据卷。
案例创建并运行一个mysql容器将宿主机目录直接挂载到容器
挂载语法
-v [宿主机目录]:[容器目录]
-v [宿主机文件]:[容器内文件]
docker run \
-p 13305:3306 \
--name mysql5x \
--privilegedtrue \
--restart always \
-v /tmp/mysql/conf/xmy.cnf:/etc/mysql/conf.d/xmy.cnf \
-v /tmp/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD123456 \
-d mysql:5.7.25