Bagaimana untuk menyalin fail dalam Docker? Salin ke mana?
Docker ialah platform sumber terbuka untuk mencipta, menggunakan dan menjalankan aplikasi. Idea terasnya ialah untuk membungkus aplikasi dan kebergantungannya semuanya dalam bekas untuk penggunaan mudah dan berjalan dalam persekitaran yang berbeza. Apabila menggunakan Docker, kita sering perlu menyalin fail ke bekas Artikel ini akan membincangkan cara menyalin fail dalam Docker.
Kaedah pertama dan paling biasa digunakan, kita boleh menggunakan arahan cp Docker untuk menyalin fail. Sintaks arahan cp adalah seperti berikut:
docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|- docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH
Antaranya, CONTAINER merujuk kepada nama atau ID bekas, SRC_PATH ialah laluan fail sumber dalam bekas, dan DEST_PATH ialah laluan fail sasaran di luar bekas. Jika DEST_PATH ditetapkan kepada "-", ia bermakna output ke skrin.
Sebagai contoh, katakan kita perlu menyalin fail setempat /root/abc.txt ke bekas bernama mycontainer dan simpan sebagai /tmp/def.txt, kemudian kita boleh melaksanakan arahan berikut:
docker cp /root/abc.txt mycontainer:/tmp/def.txt
Begitu juga, jika kita perlu menyalin fail /var/log/app.log dalam bekas ke direktori /tmp tempatan, kita boleh melaksanakan arahan berikut:
docker cp mycontainer:/var/log/app.log /tmp
Dalam selain menggunakan Docker Selain daripada arahan cp, kita juga boleh menggunakan arahan ADD atau COPY dalam Dockerfile untuk menyalin fail. Kedua-dua arahan ADD dan COPY boleh menyalin fail sumber daripada konteks binaan (iaitu, direktori tempat Fail Docker terletak) ke dalam bekas.
Sintaks arahan ADD adalah seperti berikut:
ADD [--chown=<user>:<group>] <src>... <dest>
Antaranya, parameter --chown menunjukkan pengguna dan kumpulan yang menetapkan fail semasa menyalin fail. Jika tiada parameter dinyatakan, pengguna dan kumpulan di mana Fail Docker berada digunakan.
Sintaks arahan COPY adalah seperti berikut:
COPY [--chown=<user>:<group>] <src>... <dest>
Sama seperti arahan ADD, parameter --chown juga boleh digunakan untuk menentukan pemilikan fail.
Sebagai contoh, gunakan arahan TAMBAH dalam Dockerfile berikut untuk menyalin fail setempat app.jar ke direktori /app dalam bekas:
FROM ubuntu ADD app.jar /app/app.jar
Begitu juga, gunakan arahan COPY dalam fail Docker berikut untuk menyalin Salin conf direktori tempatan ke direktori /app/conf dalam bekas:
FROM ubuntu COPY --chown=user:group conf /app/conf
Perlu diambil perhatian bahawa apabila menggunakan arahan ADD atau COPY, pemilik dan kebenaran fail atau direktori ditentukan oleh hos Sistem fail dihantar ke dalam bekas. Jika pemilikan fail atau direktori dalam sistem fail hos tidak betul, fail atau direktori yang disalin juga akan mempunyai masalah kebenaran.
Ringkasnya, untuk menyalin fail daripada Docker, anda boleh menggunakan arahan cp Docker dan arahan ADD atau COPY dalam Dockerfile. Melalui kaedah di atas, kami boleh melaksanakan operasi penyalinan fail dalam Docker dengan berkesan.
Atas ialah kandungan terperinci Bagaimana untuk menyalin fail dalam Docker? Salin ke mana?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas











Empat cara untuk keluar dari Docker Container: Gunakan Ctrl D di terminal kontena masukkan perintah keluar di terminal kontena Gunakan Docker Stop & lt; container_name & gt; Perintah Gunakan Docker Kill & lt; container_name & gt; Perintah di terminal tuan rumah (keluar kuasa)

Kaedah untuk menyalin fail ke tuan rumah luaran di Docker: Gunakan arahan CP Docker: Jalankan Docker CP [Options] & lt; Container Path & GT; & lt; PATH HOST & GT;. Menggunakan jumlah data: Buat direktori pada tuan rumah, dan gunakan parameter -V parameter untuk memasang direktori ke dalam bekas apabila membuat bekas untuk mencapai penyegerakan fail bidirectional.

Docker Container Startup Langkah: Tarik Imej Bekas: Run "Docker Pull [Mirror Name]". Buat bekas: Gunakan "Docker Buat [Pilihan] [Nama Mirror] [Perintah dan Parameter]". Mulakan bekas: Jalankan "Docker Start [Nama Container atau ID]". Semak Status Kontena: Sahkan bahawa bekas sedang berjalan dengan "Docker PS".

Anda boleh menanyakan nama kontena Docker dengan mengikuti langkah -langkah: Senaraikan semua bekas (Docker PS). Tapis senarai kontena (menggunakan arahan grep). Mendapat nama kontena (terletak di lajur "Nama").

Cara memulakan semula bekas Docker: Dapatkan ID Container (Docker PS); Hentikan bekas (Docker Stop & lt; container_id & gt;); Mulakan bekas (Docker Start & lt; container_id & gt;); Sahkan bahawa permulaan semula berjaya (Docker PS). Kaedah lain: Docker mengarang (Docker-Compose Restart) atau Docker API (lihat Dokumentasi Docker).

Proses memulakan MySQL di Docker terdiri daripada langkah -langkah berikut: Tarik imej MySQL untuk membuat dan memulakan bekas, tetapkan kata laluan pengguna root, dan memetakan sambungan pengesahan port Buat pangkalan data dan pengguna memberikan semua kebenaran ke pangkalan data

Buat bekas di Docker: 1. Tarik Imej: Docker Pull [Nama Cermin] 2. Buat bekas: Docker Run [Options] [Mirror Name] [Command] 3. Mulailah bekas: Docker Start [Nama Container]

Kaedah untuk melihat log Docker termasuk: Menggunakan arahan Log Docker, contohnya: Log Docker Container_Name Gunakan arahan docker exec untuk menjalankan /bin /sh dan lihat fail log, contohnya: docker exec -it container_name /bin /sh; Cat /var/log/container_name.log Gunakan arahan log docker-compose compose, contohnya: docker-compose -f docker-com
