十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
Docker class 2 : run the docker image and introduce the docker volume and web server
十载专注成都网站制作,成都定制网站,个人网站制作服务,为大家分享网站制作知识、方案,网站设计流程、步骤,成功服务上千家企业。为您提供网站建设,网站制作,网页设计及定制高端网站建设服务,专注于成都定制网站,高端网页制作,对成都酒楼设计等多个行业,拥有丰富的网站设计经验。
(1)
we will introduce how to use docker to run in backdround !
docker run -it -d chusiang/takojs1607 /bin/bash -c "while true; do echo 'hi'; sleep 1; done"
-d means daemon , run in the background! you can use docker ps -a see the docker process which run in the background !
-c means "while true; do echo 'hi'; sleep 1; done" is string
for example , the container ID is f0e
you can use this command to see the logs.docker logs f0e
(2)
you can use this command to give container name which you run
docker run -it -d --name test1 chusiang/takojs1607
--name means the container name
(3)
the data haven't seen when you closed the docker if you close directly
you can use docker voulme to save the data in docker!
on the basis of the first class , we create the environment to show that !
First , you need to change the user for root !
cd /
mkdir /mydata
cd mydata/
echo "hello world" > hello.txt
docker run -it -v /mydata:/data chusiang/takojs1607 /bin/bash
-v means volume
/mydata is local host
/data is docker folder
(4)
if you want to open a new terminal in docker containers which is the same container ID , you can use this command
docker exec -it CONTAINER ID bash
(5)
if you want to remove docker containers automatic after finished the docker container , you can add --rm when you start the docker container!
docker run -it --name test1 --rm chusiang/takojs1607 /bin/bash
(6)
if you want to switch terminal to host, you can tap the control +P +Q in your keyboard. if you want to use docker container , just attach it !
(7)
docker is the Light-weight virtualization , Many packages are not installed in it ! For example : ifconfig ,ping etc.
if your docker is ubuntu , you can use apt-get update , and apt-get install net-tools.
But !! Most important is it will disappear if you restart the docker .
so , you can create a new docker images with the package installed
For example , the container ID is ccea9d4e9655
docker commit cce ubuntu:mv1
then , you can start the docker new images with ifconfig tools!
if you want to remove the docker images , you can use this command
docker image rm IMAGE ID
How to use Web server in docker !?
we want to create the web page in the host virtual machine and map to the docker for starting the web server
For the first , we need to pull the docker images with httpd from docker hub
docker pull httpd
and the document root is /usr/local/apache2/htdocs/
Now, we will create the webpage.
cd /mydata/
echo "this is a index webpage" > index.html
echo "hi" >hi.htm
Start the docker container with apache
docker run -itd --name mywebserver -p 8080:80 -v /mydata:/usr/local/apache/htdocs/ httpd
-p means port
8080 is local port
80 is docker port
you can use curl 127.0.0.1:8080 for test !!!
For important, you can edit the webpage in local !
After edited , the docker web server will update!