Docker和宿主機(jī)之間如何共享文件
Docker和宿主機(jī)之間共享文件
其實(shí)只需要一條命令,就能實(shí)現(xiàn)Docker和宿主機(jī)之間共享文件。
啟動(dòng)Docker鏡像的命令一般如下:
docker run -it microsoft/dotnet:latest /bin/bash
其中-it后面的參數(shù)就是你docker鏡像的名稱。
現(xiàn)在只需要加一個(gè)-v參數(shù)即可。
docker run -it -v /home/haha/下載:/share microsoft/dotnet:latest /bin/bash
上面命令表示:
把宿主機(jī)的/home/haha/下載目錄掛載到microsoft/dotnet:latest容器的/share目錄下。
執(zhí)行完上面命令進(jìn)入Docker容器后,進(jìn)入/share文件夾下,ls后就會(huì)看到原來宿主機(jī)下目錄“/home/haha/下載”的文件。
docker-運(yùn)維-共享宿主機(jī)的jdk
準(zhǔn)備
mkdir dc-jdk cd dc-jdk
創(chuàng)建dockerfile
在 dc-jdk
中創(chuàng)建 Dockerfile
文件:
FROM ubuntu:latest ENV LANG C.UTF-8 # 指定容器內(nèi)jdk所在目錄 ENV JAVA_HOME /opt/softinstall/jdk1.8.0_11 ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar ENV PATH $PATH:$JAVA_HOME/bin:$JAVA_HOME/sbin
創(chuàng)建docker-compose.yml
在 dc-jdk
中創(chuàng)建 docker-compose.yml
文件:
version: '3' services: myjdk18: build: context: . dockerfile: Dockerfile volumes: # 將本地的jdk目錄/opt/softinstall/jdk1.8.0_11掛載到容器中 # 本地jdk目錄:容器jdk目錄 - /opt/softinstall/jdk1.8.0_11:/opt/softinstall/jdk1.8.0_11 command: java -version
構(gòu)建鏡像
這一步很重要!
每次修改了dockerfile 之后,都需要執(zhí)行這個(gè)命令??!坑死了都 >_>
$ docker-compose build
[root@bluesky dc-jdk]# docker-compose build Building myjdk18 Step 1/5 : FROM ubuntu:latest ---> 775349758637 Step 2/5 : ENV LANG C.UTF-8 ---> Using cache ---> 9d7b38a12294 Step 3/5 : ENV JAVA_HOME /opt/softinstall/jdk1.8.0_11 ---> Using cache ---> 07da70072ae2 Step 4/5 : ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar ---> Using cache ---> f707d196f0fa Step 5/5 : ENV PATH $PATH:$JAVA_HOME/bin:$JAVA_HOME/sbin ---> Using cache ---> 9d436adab128 Successfully built 9d436adab128 Successfully tagged dc-jdk_myjdk18:latestd
運(yùn)行容器
$ docker-compose up
[root@bluesky dc-jdk]# docker-compose up Creating dc-jdk_myjdk18_1 ... done Attaching to dc-jdk_myjdk18_1 myjdk18_1 | java version "1.8.0_11" myjdk18_1 | Java(TM) SE Runtime Environment (build 1.8.0_11-b12) myjdk18_1 | Java HotSpot(TM) 64-Bit Server VM (build 25.11-b03, mixed mode) dc-jdk_myjdk18_1 exited with code 0
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
docker實(shí)踐之從新鏡像啟動(dòng)容器報(bào)錯(cuò)解決
這篇文章主要介紹了docker實(shí)踐之從新鏡像啟動(dòng)容器報(bào)錯(cuò)解決,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-08-08docker多個(gè)容器的相互通信實(shí)現(xiàn)步驟
本文介紹了在宿主機(jī)上運(yùn)行多個(gè)Docker容器時(shí)的幾種通信方式,包括默認(rèn)的橋接網(wǎng)絡(luò)、自定義網(wǎng)絡(luò)、--link參數(shù)、Host網(wǎng)絡(luò)、Docker-compose和共享數(shù)據(jù)卷等,每種方式都有其特點(diǎn)和適用場景,感興趣的朋友跟隨小編一起看看吧2025-02-02docker windows10 共享目錄掛載失敗的解決方案
這篇文章主要介紹了docker windows10 共享目錄掛載失敗的解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03docker從安裝入門到應(yīng)用部署及私有倉庫搭建基礎(chǔ)命令
這篇文章主要為大家介紹了docker從安裝入門到應(yīng)用部署及私有倉庫搭建基礎(chǔ)命令,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2022-04-04Docker 安裝 Nginx 并掛載目錄的實(shí)現(xiàn)示例
本文介紹了如何使用Docker拉取Nginx鏡像、創(chuàng)建容器,并設(shè)置掛載目錄,掛載目錄用于將容器內(nèi)配置文件與主機(jī)關(guān)聯(lián),便于直接修改影響容器配置,感興趣的可以了解一下2024-10-10Docker-Compose搭建Redis集群的實(shí)現(xiàn)教程
本文主要介紹了Docker-Compose搭建Redis集群的實(shí)現(xiàn)教程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03