1. 程式人生 > >ubuntu 上 docker 安裝以及配置VNCserver

ubuntu 上 docker 安裝以及配置VNCserver

1.install
Docker
安裝過程,根據docker官網安裝過程,根據docker官網
<a data-cke-saved-href="https://docs.docker.com/install/linux/docker-ce/ubuntu/#upgrade-docker-ce" href="https://docs.docker.com/install/linux/docker-ce/ubuntu/#upgrade-docker-ce">https://docs.docker.com/install/linux/docker-ce/ubuntu/#upgrade-docker-ce</a>
#sudo
docker run hello-world
成功後,Docker安裝成功.,Docker安裝成功.
2.開始使用開始使用
2.1
sudo 問題問題
接下來你可能會跟我一樣遇到這個問題::
Cannot connect to the Docker daemon. Is the docker daemon running on this host?
可以參考這篇文章
<a data-cke-saved-href="http://blog.csdn.net/hejjiiee/article/details/53509744" href="http://blog.csdn.net/hejjiiee/article/details/53509744">http://blog.csdn.net/hejjiiee/article/details/53509744</a>
我使用了第二個方法,將當前使用者加入docker組,問題解決,並且可以在執行docker時不需要sudo命令.,將當前使用者加入docker組,問題解決,並且可以在執行docker時不需要sudo命令.
把當前使用者加到docker使用者組中:docker使用者組中:
#新增docker使用者組新增docker使用者組
  1. sudo groupadd docker  
#
把自己加到docker使用者組中把自己加到docker使用者組中
  1. sudo gpasswd -a myusername docker  
#
重啟docker後臺服務重啟docker後臺服務
  1. sudo service docker restart  
重啟系統,直接執行docker命令就行了,不用加上sudo。docker命令就行了,不用加上sudo。
2.2
pull
接下來要使用的Docker命令,基本上都可以在這裡searchDocker命令,基本上都可以在這裡search
<a data-cke-saved-href="https://docs.docker.com/search/" href="https://docs.docker.com/search/">https://docs.docker.com/search/</a>
比如,pull映象,pull映象
<a data-cke-saved-href="https://docs.docker.com/engine/reference/commandline/pull/" href="https://docs.docker.com/engine/reference/commandline/pull/">https://docs.docker.com/engine/reference/commandline/pull/</a>
我想要pull ubuntu14.04pull ubuntu14.04
#docker pull ubuntu:14.04
發現速度極慢,還可能中斷.原因是:---摘自<docker入門到實踐>,還可能中斷.原因是:---摘自<docker入門到實踐>
國內從Docker Hub拉取映象有時會遇到困難,此時可以配置映象加速器。Docker官方和國內很多雲服務商都提供了國內加速器服務,例如:Docker Hub拉取映象有時會遇到困難,此時可以配置映象加速器。Docker官方和國內很多雲服務商都提供了國內加速器服務,例如:
  • <a data-cke-saved-href="https://cr.console.aliyun.com/#/accelerator" href="https://cr.console.aliyun.com/#/accelerator">阿里雲加速器</a>
  • <a data-cke-saved-href="https://www.daocloud.io/mirror#accelerator-doc" href="https://www.daocloud.io/mirror#accelerator-doc">DaoCloud	加速器</a>
我使用了官網方法,連結,連結
也是到官網的指導.我沒有/etc/docker/dawmon.json,所以我用了第一個方法:.我沒有/etc/docker/dawmon.json,所以我用了第一個方法:
#docker pull registry.docker-cn.com/library/ubuntu
後面自己加了:14.04指定版本.pull速度還不錯.:14.04指定版本.pull速度還不錯.
#Docker images 或者docker image ls或者docker image ls
檢視本地的映象..
REPOSITORY
                             TAG                 IMAGE ID           
CREATED             SIZE 

ubuntu
                                 14.04               dc4491992653    
   4 weeks ago         222MB 

registry.docker-cn.com/library/ubuntu
  14.04               dc4491992653        4 weeks ago         222MB 

hello-world
                            latest              f2a91732366c        3
months ago        1.85kB 

2.3
run
#docker run -it ubuntu:14.04,進到了容器的root進到了容器的root
選擇-it 模式執行我的ubuntu14.04 image-it 模式執行我的ubuntu14.04 image
#docker ps
可以檢視正在執行的容器
安裝完成後,準備使用VNC連線docker執行的container,並且顯示環境介面.,準備使用VNC連線docker執行的container,並且顯示環境介面.
根據經驗,最好在虛擬機器裡面新增使用者,在這個使用者下安裝VNC.,最好在虛擬機器裡面新增使用者,在這個使用者下安裝VNC.
3.4
新增使用者新增使用者
在當前的root 使用者下新建另一個使用者cindy,su 切換到cindy使用者,退出該使用者
exitroot 使用者下新建另一個使用者cindy,su 切換到cindy使用者,退出該使用者
exit
useradd -u 545 -d /usr/cindy -g users -m cindy 

passwd cindy 

sudo groupadd docker 

sudo gpasswd -a cindy  docker 

sudo service docker restart 

su cindy 

exit
3.5
新建使用者沒有sudo ,沒有vim問題新建使用者沒有sudo ,沒有vim問題
在新使用者下操作,會遇到回到使用者不在sudoers 
的問題.,會遇到回到使用者不在sudoers 
的問題.
回到root使用者下,把新建的使用者加到sudo

root使用者下,把新建的使用者加到sudo

usermod -aG sudo cindy
再切換回到cindy使用者cindy使用者
su cindy
3.6
新使用者下安裝VNC新使用者下安裝VNC
<a data-cke-saved-href="http://blog.topspeedsnail.com/archives/4563" href="http://blog.topspeedsnail.com/archives/4563">http://blog.topspeedsnail.com/archives/4563</a>
按照這個教程,安裝.,安裝.
檢視ip:ip:
ifconfig
最後,在這個使用者下啟動VNC,在這個使用者下啟動VNC
#vncserver
[email protected]:/home/w$
vncserver 

Warning:
4cd41a93649d:1 is taken because of /tmp/.X1-lock 

Remove
this file if there is no X server 4cd41a93649d:1 

Warning:
4cd41a93649d:2 is taken because of /tmp/.X2-lock 

Remove
this file if there is no X server 4cd41a93649d:2 

New
'X' desktop is 4cd41a93649d:3 

Starting
applications specified in /usr/cindy/.vnc/xstartup 

Log
file is /usr/cindy/.vnc/4cd41a93649d:3.log 

可見,已經有兩個埠號了,當前是第三個,5903,已經有兩個埠號了,當前是第三個,5903
進到VNC資料夾下(未上傳),啟動
vncviwer,將ip:埠號輸進去,啟動VNC連線到docker
的容器.VNC資料夾下(未上傳),啟動
vncviwer,將ip:埠號輸進去,啟動VNC連線到docker
的容器.
輸入container的密碼,而不是當前使用者的密碼container的密碼,而不是當前使用者的密碼
3.7
儲存修改後的映象儲存修改後的映象
把修改後的container儲存成新的映象,名為 ubuntu14.04_vnccontainer儲存成新的映象,名為 ubuntu14.04_vnc
docker commit -m='vnc add,vim,sudo,cindy ok ' -a "cindy" ad42b86417b2 ubuntu14.04_vnc dy ok ' -a "cindy" ad42b86417b2 ubuntu14.04_vnc 
3.7
和本機的資料互動和本機的資料互動
另一種run 方式,可以對映本機檔案到docker 的container 內.run 方式,可以對映本機檔案到docker 的container 內.

dockerrun -it -p 5903:5903 -v /cv:/cv -v /home/w/:/home/w/ubuntu14.04_vnc

埠對映-p5903:5903

如果需要redis對映,還可以在這個-p後面再加-p6380:6379(舉個栗子)

將本地的兩個資料夾對映到container,runimage: ubuntu14.04_vnc

這樣,進入容器後,在安裝VNC的使用者下就可以啟動vncserver,可以處理本機的這兩個資料夾內的資料.