Docker及圖形化管理UI Portainer的搭建

1、什麼是Docker?

Docker 是一個開源的應用容器引擎,讓開發者能夠打包他們的應用以及依賴包到一個可移植的鏡像中,而後發佈到任何流行的 Linux或Windows 機器上,也能夠實現虛擬化。容器是徹底使用沙箱機制,相互之間不會有任何接口。html

2、搭建Dokcer的方法

參考連接:www.runoob.com/docker/ubun… 這裏惟一須要注意的就是Docker國內鏡像的配置,以MAC爲例:java

鑑於國內網絡問題,後續拉取 Docker 鏡像十分緩慢,咱們能夠須要配置加速器來解決,我使用的是網易的鏡像地址:hub-mirror.c.163.comnginx

在任務欄點擊 Docker for mac 應用圖標 -> Perferences... -> Daemon -> Registry mirrors。在列表中填寫加速器地址便可。修改完成以後,點擊 Apply & Restart 按鈕,Docker 就會重啓並應用配置的鏡像地址了。docker

6B76CF7C-DC88-4DB4-8305-31EEF4323372.png

以後咱們能夠經過 docker info 來查看是否配置成功。ubuntu

$ docker info
...
Registry Mirrors:
 http://hub-mirror.c.163.com
Live Restore Enabled: false
複製代碼

3、什麼是Portainer?

Portainer是Docker的圖形化管理工具,提供狀態顯示面板、應用模板快速部署、容器鏡像網絡數據卷的基本操做(包括上傳下載鏡像,建立容器等操做)、事件日誌顯示、容器控制檯操做、Swarm集羣和服務等集中管理和操做、登陸用戶管理和控制等功能。功能十分全面,基本能知足中小型單位對容器管理的所有需求。瀏覽器

4、Portainer的搭建

很是簡單一條命令便可markdown

docker pull portainer/portainer && docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer
複製代碼

上述命令執行了這幾個步驟:網絡

  • 拉取 portainer/portainer鏡像
  • 以 portainer/portainer鏡像構造容器,映射容器端口9000到本機9000端口,掛載容器磁盤/var/run/docker.sock到本機/var/run/docker.sock 執行完命令以後,瀏覽器訪問http://localhost:9000便可打開Portainer
    image.png

5、使用Docker搭建nginx,實現域名映射

  • 在Portainer的App Templates菜單裏找到Nginx模板,直接運行構建 nginx,或者使用以下命令搭建
docker pull nginx && docker run -d -p 80:80 -v /Users/jinwenwu/Documents/nginx/nginx.conf:/etc/nginx/nginx.conf  nginx
複製代碼
  • 修改以前掛載的nginx.conf配置文件
user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

    server {
        listen 80;
        server_name docker.xyz.cn;
        location / {
            proxy_pass http://192.168.27.180:9000;
        }
    }
}

複製代碼
  • 在host文件中配置
192.168.27.180 docker.xyz.cn
複製代碼
  • 在Portainer重啓nginx容器,便可經過docker.xyz.cn域名訪問Portainer
相關文章
相關標籤/搜索