Rumah > Artikel > Operasi dan penyelenggaraan > Pengenalan terperinci kepada lokasi dan kaedah menyimpan fail yang dimuat turun dalam Docker
Dengan penggunaan meluas Docker dalam pembangunan aplikasi dan pengkomputeran awan, ramai pengguna mendapati bahawa apabila memuat turun imej dan bekas Docker, mereka tidak tahu di mana fail ini akan disimpan. Dalam artikel ini, kami akan memperincikan lokasi dan kaedah menyimpan fail yang dimuat turun dalam Docker.
Struktur sistem fail fail yang dimuat turun dalam Docker
Sebelum memahami lokasi storan fail yang dimuat turun dalam Docker, anda perlu terlebih dahulu memahami struktur sistem fail imej dan bekas Docker.
Imej Docker ialah sistem fail maya yang mengandungi sistem fail akar. Imej Docker menggunakan teknologi Union FS Dalam imej, sistem fail pada lapisan yang berbeza adalah baca sahaja, dan hanya lapisan paling atas boleh tulis boleh ditulis.
Struktur fail sistem fail imej Docker adalah seperti berikut:
/ # 根目录 |-- bin/ # 可执行文件目录 |-- dev/ # 设备文件目录 |-- etc/ # 配置文件目录 |-- home/ # 用户根目录 |-- lib/ # 库文件目录 |-- media/ # 可移动设备目录 |-- mnt/ # 挂载目录 |-- opt/ # 可选应用程序目录 |-- proc/ # 进程信息目录 |-- root/ # 系统管理员目录 |-- run/ # 运行时文件目录 |-- sbin/ # 系统可执行文件目录 |-- srv/ # 服务目录 |-- sys/ # 系统文件目录 |-- tmp/ # 临时文件目录 |-- usr/ # 用户程序目录 |-- var/ # 可变数据目录 `-- docker/ # Docker自身用目录
Apabila Docker memulakan bekas , ia Lapisan boleh tulis baca-tulis akan ditambah pada lapisan paling atas imej untuk menyimpan fail dan data baharu yang diperlukan semasa aplikasi berjalan. Lapisan boleh tulis ini adalah sebahagian daripada sistem fail bekas.
Struktur fail sistem fail kontena Docker adalah seperti berikut:
/ # 根目录 |-- bin/ # 可执行文件目录 |-- dev/ # 设备文件目录 |-- etc/ # 配置文件目录 |-- home/ # 用户根目录 |-- lib/ # 库文件目录 |-- media/ # 可移动设备目录 |-- mnt/ # 挂载目录 |-- opt/ # 可选应用程序目录 |-- proc/ # 进程信息目录 |-- root/ # 系统管理员目录 |-- run/ # 运行时文件目录 |-- sbin/ # 系统可执行文件目录 |-- srv/ # 服务目录 |-- sys/ # 系统文件目录 |-- tmp/ # 临时文件目录 |-- usr/ # 用户程序目录 |-- var/ # 可变数据目录 `-- docker/ # Docker自身用目录
Lokasi storan fail yang dimuat turun dalam Docker
Fail yang dimuat turun dalam Docker akan disimpan dalam imej Atau dalam lapisan bekas yang boleh ditulis, fail ini boleh digunakan dalam bekas atau dieksport dari bekas ke sistem fail hos.
Berikut ialah beberapa contoh muat turun fail dan cara mencarinya.
Apabila menjalankan imej Docker, anda boleh menggunakan arahan ADD atau COPY dalam Dockerfile untuk menambah fail pada imej.
Format arahan ADD ialah:
ADD source destination
Di mana, sumber ialah fail atau direktori dalam hos, dan destinasi ialah direktori dalam imej Docker.
Format arahan COPY ialah:
COPY source destination
di mana sumber ialah fail atau direktori dalam hos dan destinasi ialah direktori dalam imej Docker.
Sebagai contoh, fail Docker berikut akan menyalin fail index.html daripada hos ke direktori /var/www dalam imej:
FROM nginx COPY index.html /var/www/
Pada masa jalan, anda boleh menggunakan docker Docker inspect command Cari fail ini:
$ docker inspect [imageID] | grep "/var/www/index.html"
Terdapat banyak cara untuk memuat turun fail dalam bekas Docker, termasuk menggunakan wget, curl, scp , dsb. perintah, anda juga boleh menggunakan arahan ADD dan COPY untuk menyalin fail daripada hos.
Gunakan wget untuk memuat turun fail ke dalam bekas:
$ docker run -it ubuntu wget http://example.com/file.txt
Berikut ialah langkah-langkah untuk menggunakan wget untuk memuat turun fail ke dalam bekas:
Buat bekas Ubuntu:
$ docker run -it ubuntu
Pasang wget:
$ apt-get update $ apt-get install wget
Muat turun fail menggunakan wget:
$ wget http://example.com/file.txt
Salin fail daripada bekas ke hos menggunakan arahan cp docker Docker:
$ docker cp [containerID]:/file.txt .
Gunakan curl untuk memuat turun fail ke dalam bekas:
Ambil muat turun logo Google sebagai contoh:
$ docker run -it ubuntu curl -o google_logo.png https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png
Gunakan arahan ADD dan COPY untuk menyalin fail daripada hos ke bekas :
Sama seperti pencerminan, fail pada hos juga boleh disalin ke bekas menggunakan arahan ADD dan COPY Docker. Fail ini akan disimpan dalam lapisan boleh tulis setempat ke bekas.
Berikut ialah contoh fail Docker yang menggunakan arahan TAMBAH untuk menyalin fail daripada hos ke dalam bekas:
FROM ubuntu ADD file.txt /app/
Pada masa jalan, fail ini boleh ditemui menggunakan pemeriksaan docker Docker arahan:
$ docker inspect [containerID] | grep "/app/file.txt"
Ringkasan
Fail yang dimuat turun dalam Docker akan disimpan dalam imej yang sepadan atau lapisan boleh tulis dalam bekas Fail boleh dimuat turun atau disalin daripada bekas melalui arahan Docker atau menggunakan alatan biasa. Lokasi dan kaedah mereka agak mudah untuk dikuasai, jadi anda tidak perlu terlalu risau tentang isu ini apabila menggunakan Docker.
Atas ialah kandungan terperinci Pengenalan terperinci kepada lokasi dan kaedah menyimpan fail yang dimuat turun dalam Docker. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!