通过这个小例子我们可以进一步加深对Docker volume概念的理解和使用方法。
我们都知道运行基于Docker的Nginx镜像后,访问localhost能看到Nginx默认的首页,这个首页的位置是Nginx镜像内的/usr/share/nginx/html目录下面。
假设我们有个需求,修改Nginx默认的首页成下面的内容:
<html>
<head>
<title>Custom Website from my container</title>
</head>
<body>
<h1>This is Jerry's custom website.</h1>
<p>This website is served from my <a href="http://www.docker.com" target="_blank">SAP Docker</a> container.</p>
</body>
</html>
下面是详细方法。
命令行-v将主机目录nginx-html挂载到Nginx容器内的/usr/share/nginx/html目录内。
docker run -d -p 1081:80 -v `pwd`/nginx-html:/usr/share/nginx/html --name jerry-custom nginx
使用vi将主机目录nginx-html下面的index.html修改成自定义内容:
通过交互式的方式进入到docker容器内部:
docker exec -it jerry-custom /bin/sh
发现Docker容器里的index.html也自动被修改了,内容和主机目录nginx-html下面的一致。
localhost:1081即可看到修改过后的自定义Nginx首页:
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
相关推荐
首先,我们需要下载 WordPress、MySQL 和 Nginx 镜像。我们可以使用 Docker 命令来下载镜像: ``` docker pull mysql:5.7 docker pull wordpress docker pull nginx ``` 二、启动 MySQL 容器 我们需要启动 MySQL ...
</h1>' > /usr/share/nginx/html/index.html RUN ["php", "-S", "0.0.0.0:8080"] # COPY 复制文件 COPY <源路径>... <目标路径> COPY swoole-4.2.10.tgz /home COPY nginx.conf /etc/nginx/nginx.conf # ADD 复制...
本教程将深入探讨Docker中的数据持久化方法,特别是关于"data volume"的使用。 一、Docker 数据管理概述 在Docker中,数据管理是一个关键问题,因为容器本身是临时性的,当容器停止或删除时,其内部的数据也会丢失...
- **扩展性**:通过增加服务实例数量实现水平扩展,只需修改`docker-compose.yml`中的副本数即可。 - **更新和回滚**:可以优雅地停止旧服务,启动新服务,实现无中断升级,同时保留回滚的能力。 在服务器环境中,...
Docker Hub 是 Docker 的镜像仓库,提供了大量的镜像供用户使用。 安装 Redis ------------ Redis 是一个流行的 NoSQL 数据库,可以使用 Docker 快速安装和部署。 ### 安装命令 docker run -d --name redis-test...
Compose 将会利用它自动构建这个镜像,然后使用这个镜像启动服务容器 build: # context 选项可以是 Dockerfile 的文件路径,也可以是到链接到 git 仓库的 url # 当提供的值是相对路径时,它被解析为相对于撰写...
docker volume create java_app 将jar包上传到/var/lib/docker/volumes/java_app/_data/下,然后启动镜像 启动镜像 docker run --name=javaApp --restart=always --network=host \ -v java_app:/usr/src/myapp ...
1、构建Nginx环境镜像 5 1.1 准备文件 5 1.2 创建dockerfile文件 5 1.3构建nginx镜像 5 1.4创建容器 5 2、构建PHP环境镜像 5 2.1 准备文件 5 2.2 创建dockerfile文件 5 2.3构建PHP镜像 6 2.4创建容器 6 3、构建JAVA...
”>/usr/share/nginx/html/index.html VOLUME /usr/share/nginx/html/ 这样就配置了一个匿名数据卷,运行过程中,将数据写入到/usr/share/nginx/html/目录中,就可以实现容器存储层的无状态变化。查看所有数据卷 ...
通过本文对 Docker 容器生命周期管理的详细介绍,我们不仅了解了如何使用 `docker run` 命令来创建和启动容器,还学习了如何利用 `docker start`、`docker stop`、`docker restart` 和 `docker kill` 来管理容器的...
通过这种方式,Web服务可以在不牺牲安全性的情况下,利用Docker的灵活性和Nginx的性能,同时享受Let's Encrypt提供的免费SSL服务。这对于个人开发者和小型组织来说是一个非常经济且实用的解决方案。
Roundcube Docker映像基于 , , 和 Docker镜像。用法执行以下命令以运行该映像: docker run --publish 80:80 --volume /var/opt/roundcube:/var/www/roundcube/config jsshandle/roundcube执照
docker run --name nginx-volume -v /data nginx ``` 2. 然后其他容器通过`--volumes-from`选项挂载该容器的数据卷: ```bash docker run --name v1 --volumes-from nginx-volume nginx docker run --name v2 -...
假设我们有一个名为`nginx`的镜像,ID为`da5939581ac8`,我们可以这样创建容器: ```bash $ docker run -d \ -it \ --name sshfs-container \ --mount src=sshvolume,target=/app,type=volume,volume-driver=...
本章是基于Centos7系统教程 前提准备 安装docker 执行下面命令 $ yum install -y yum-utils ...$ yum -y install docker-ce docker-ce-cli containerd.io $ yum list docker-ce --showduplicates | sort -r $ yum -y
Dockerfile 文件是 Docker 项目中最重要的文件之一,它定义了镜像的构建过程。 Dockerfile 中的每一行命令都可以生成一个临时镜像层,从而构建出最终的镜像。下面是 Dockerfile 文件中常用的命令和参数: 1. FROM ...
Docker私服Nexus3的搭建,怎么样利用私服推拉镜像,管理镜像。 什么是持续集成、什么是容器化集成和部署、怎么样安装Jenkins、规避哪些坑、什么是Blue Ocean 什么是流水线技术、什么是Jenkins Piepeline流水线技术、...
数据卷入门 在前面的案例中,如果我们需要将数据从宿主机...以前面使用的 nginx 镜像为例,在运行该容器时,可以指定一个数据卷,命令如下: docker run -itd --name nginx -v /usr/share/nginx/html/ -p 80:80 bc26
Docker 命令汇总1.1 镜像管理命令1.2 docker容器管理常用命令1.2.1 docker run常用参数1.2.2 docker 创建容器命令1.2.3 容器资源限制1.3 docker将数据挂载到容器的三种方式1.3.1 Docker提供三种方式将数据从宿主机...
FROM 基础镜像 MAINTAINER 维护这信息 RUN 运行什么命令,在命令前面加上RUN ADD 往里面加点文件,copy文件,会自动解压 WORKDIR 当前的工作目录 VOLUME 目录挂载 EXPOSE 开放的端口 RUN 进程要一直运行 实战:构建...