- Docker on Windows
- Elton Stoneman
- 296字
- 2021-07-02 19:53:21
Mounting volumes from host directories
You use the --volume option to explicitly map a directory in a container from a known location on the host. The target location in the container can be a directory created with the VOLUME command, or any directory in the container's filesystem. The source is the location on the host filesystem.
I'll create a dummy configuration file for my app in a directory on the C drive on my Windows machine:
PS> mkdir C:\app-config | Out-Null
PS> echo 'VERSION=17.06' > C:\app-config\version.txt
Now I'll run a container which maps a volume from the host, and read the configuration file which is actually stored on the host:
> docker container run `
--volume C:\app-config:C:\app\config `
dockeronwindows/ch02-volumes `
cat C:\app\config\version.txt
VERSION=17.06
The --volume option specifies the mount in the format {source}:{target}. The source is the host location, which needs to exist. The target is the container location, which does not need to exist - but needs to be empty if it does exist.
Volume mounts are useful for running stateful applications in containers, like databases. You can run SQL Server in a container, and have the database files stored in a location on the host - which could be a RAID array on the server. When you have schema updates, you remove the old container and start a new container from the updated Docker image. You use the same volume mount for the new container, so the data is preserved from the old container.
- Android應用程序開發與典型案例
- Android Jetpack開發:原理解析與應用實戰
- 認識編程:以Python語言講透編程的本質
- 技術領導力:程序員如何才能帶團隊
- PostgreSQL技術內幕:事務處理深度探索
- Redis Essentials
- Getting Started with Python Data Analysis
- Building Minecraft Server Modifications
- VMware虛擬化技術
- 零基礎Java學習筆記
- Python機器學習:預測分析核心算法
- C++反匯編與逆向分析技術揭秘(第2版)
- Quantum Computing and Blockchain in Business
- AutoCAD 2009實訓指導
- 軟件體系結構