方式一:挂载一个主机目录到docker container 进行数据共享,在container中不需要重新下载需要的软件,可以从主机共享
创建一个container并在其中新建文件夹redapple
[root@localhost daisy_docker]# docker run -i -t centos/bin/bash [root@fd19c3c9912a /]# ls
anaconda-post.log dev home lib64 media opt root sbin sys usr
bin etc lib lost+found mnt proc run srv tmp var
[root@fd19c3c9912a /]# cd opt/
[root@fd19c3c9912a opt]# ls
[root@fd19c3c9912a opt]# mkdir redapple
[root@fd19c3c9912aopt]# cd redapple/
[root@fd19c3c9912a redapple]# pwd
/opt/redapple //docker上目录挂载地
[root@localhost daisy_docker]# docker run -i -t -d -P --name web1 -v/root/daisy/RT_test/rt-tests-1.0:/opt/redapple centos //将host上目录/root/daisy/RT_test/rt-tests-1.0作为数据卷挂载到docker container里的/opt/redapple目录下,这样在容器里就能共享host上文件及软件
31ac104a9281de08b765090169f8cc7d657c6fcfe7290f3b82e5a5b0cdb0bb43
[root@localhost daisy_docker]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
31ac104a9281 centos "/bin/bash" 9 seconds ago Up 6 seconds web1
[root@localhost daisy_docker]# docker attach web1
[root@31ac104a9281 /]# ls
anaconda-post.log dev home lib64 media opt root sbin sys usr
bin etc lib lost+found mnt proc run srv tmp var
[root@31ac104a9281 /]# cd opt
[root@31ac104a9281 opt]# ls
redapple
[root@31ac104a9281 opt]# cd redapple/
[root@31ac104a9281 redapple]# ls
COPYING cyclictest pi_stress signaltest
MAINTAINERS hackbench pip_stress sigwaittest
Makefile hwlatdetect pmqtest src
README.markdown linux-3.12.66 ptsematest svsematest
RT_test linux-3.12.66.tar.gz rt-migrate-test
bld patch-3.12.66-rt88.patch.gz sendme
方式二:自己在主机新建一个image,包括一些所需软件,然后在docker中应用这个image,这样也不需要每次都下载,直接将这个image作为baseimage