前言
用了linux服務器也有半年了。但是還是覺得在centos系統下安裝各種文件比如nginx,mysql,jdk等等文件還是很麻煩,各種環境變量配置來配置去。在下對於linux也只是停留在需要用什麼命令開始百度查詢的狀態。所以每次在服務器安裝什麼軟件就很難受。偶然的機會了解了docker已經docker的方便之處。最近學習了一下使用。發現的確非常方便。之前要配置很久的東西幾條命令就可以處理。而且在製作好鏡像之後可以很好的移植。今天就記錄一下和docekr有關的安裝和命令。
服務器:阿里雲的香港ESC,安裝的centos7
1.安裝以及刪除
安裝docker:
yum install -y docker
全程選擇y默認安裝即可
查看已經安裝的docker:
yum list installed | grep docker
docker.x86_64 2:1.13.1-53.git774336d.el7.centos @extras
docker-client.x86_64 2:1.13.1-53.git774336d.el7.centos @extras
docker-common.x86_64 2:1.13.1-53.git774336d.el7.centos @extras
刪除已經安裝的docker:
yum remove -y docker.x86_64
yum remove -y docker-client.x86_64
yum remove -y docker-common.x86_64
2.docker服務啓動關閉
docker服務啓動:
systemctl start docker
或者
systemctl start docker.service
docker服務狀態查看:
systemctl status docker
docker服務停止:
systemctl stop docker
docker服務重啓:
systemctl restart docker
3.docker國內站點配置
我的服務器是香港的阿里雲,如果是國內服務器去docker官網拉取,就會很卡,所以需要配置國內鏡像
首先在/etc/docker目錄下編輯daemon.json文件
修改爲
{"registry-mirrors": ["[https://docker.mirrors.ustc.edu.cn](https://docker.mirrors.ustc.edu.cn/)"] }
完成後重啓docker即可
4.docker鏡像
docker拉取鏡像:
docker serach name#查詢相應鏡像
docker pull tomcat:7.0.77#docker拉取tomcat,冒號後面的是版本號
docker列出所有鏡像:
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/tomcat 7.0.77 edd4e9cbd03a 12 months ago 357 MB
docker刪除鏡像:
docker rmi docker.io/tomcat:7.0.77#docker.io/tomcat:7.0.77就是鏡像的名稱
或
docker rmi edd4e9cbd03a#edd4e9cbd03a就是鏡像的id
docker導出鏡像:
docker save docker.io/tomcat:7.0.77 >/root/mytomcat7.tar.gz
docker導入鏡像:
docker load < /root/mytomcat7.tar.gz
5.docker容器
查看所有容器:
docker ps -a
查看正在運行的容器:
docker ps
這裏我舉例啓動tomcat容器
docker交互式啓動容器:
docker run -it --name mytomcat1 -p 8082:8080 -v /root/tomcat/tomcat-users.xml:/usr/local/tomcat/conf/tomcat-users.xml -v /root/tomcat/log:/usr/local/tomcat/logs -d docker.io/tomcat:7.0.77 /bin/bash
其中
–name mytomcat1:表示給容器起的別名
docker.io/tomcat:7.0.77:表示你要啓動哪個鏡像的容器實例
-p 8082:8080:表示把容器內的8080端口映射到宿主機的8082端口上,訪問localhost:8082,就可以看到tomcat的web界面
-v /root/tomcat/tomcat-users.xml:/usr/local/tomcat/conf/tomcat-users.xml:表示在創建容器的時候把本地的tomcat-users.xml映射到容器內的那個配置文件上,在本地修改等於在容器修改
-v /root/tomcat/log:/usr/local/tomcat/logs:表示把本地的/root/tomcat/log文件夾映射到容器內的/usr/local/tomcat/logs上。tomcat啓動後的日誌都可以在本地的/root/tomcat/log文件夾內看到
-d:後臺運行容器,並返回容器ID;
/bin/bash:在進入容器後容器內執行/bin/bash命令。
docker進入容器內:
docker exec -it mytomcat2 /bin/bash
docker 停止容器:
docker stop mytomcat2#mytomcat2是別名
或者
docker stop 3c28f94c533f#3c28f94c533f是容器id
docker重啓容器:
docker start mytomcat2
或者
docker start 3c28f94c533f
docker 刪除容器:
docker rm mytomcat2
或者
docker rm 3c28f94c533f
注意,docker刪除容器必須要容器已經停止的情況下纔可以進行該操作
docker刪除所有容器:
docker rm `docker ps -a -q`
6.安裝vim
docker在進入容器後無法修改文件,因爲vi指令不生效。這個時候就要主動安裝
apt-get update
apt-get install vim
就可以使用vi修改文件了