摘要:如果不用我們可能將上述講的命令每搭建一次就需要執行一遍,有沒有能統一管理的有,就是在環境搭建中的作用快速創建鏡像,快速創建并運行容器,實現統一管理。
前言
初學者在dcoker學習過程中,可能不太清楚docker中那么多的命令,參數,工具在lnmp環境搭建中起了什么作用,下面跟著我來熟悉一下。(本文面向的是不怎么熟悉linux的:phper)
鏡像,容器,倉庫鏡像:Docker 鏡像就是一個只讀的模板。
容器:Docker 利用容器來運行應用。
倉庫:倉庫是集中存放鏡像文件的場所。
在環境搭建中的作用:通過鏡像創建容器,通過容器安裝運行應用,最后可以將容器生成為鏡像保存到倉庫
創建容器的三種方法:
使用centos鏡像,通過命令創建一個容器
docker pull centos # pull 拉取鏡像 docker run -it -P --name "centos-test" --rm centos /bin/bash # --name 指定容器別名 # -P 通過NAT機制將容器標記暴露的端口自動映射到本地主機的臨時端口 # -i 保持標準輸入打開 默認為false # -t 是否分配一個偽終端 # 啟動一個bash終端,允許用戶進行交互
使用centos基礎鏡像,通過Dockerfile創建自定義鏡像
FROM centos
docker build -t centos-slef/laster .
使用centos基礎鏡像,通過docker-compose創建容器并啟動
lnmp: image: centos # 使用build 參數,會通過 Dockerfile 創建鏡像并基于此鏡像創建運行容器 # 使用image 參數,會直接通過 image 指定的鏡像創建并運行容器
docker-compose up --build
通過容器創建鏡像
在容器中安裝lnmp環境
退出并執行
docker commit -a "amor" -m "add lnmp" c6b9b6cf3174 lnmp:1.4.0 # -a 作者信息 # -m 備注 # c6b9b6cf3174 容器id 運行的通過:docker ps 查看 停止的通過:docker ps -qa 查看Dockerfile
Dockerfile:Dockerfile 是一個文本格式的配置文件,用戶可以使用Dockerfile來快速的創建自定義鏡像。
在環境搭建中的作用:
對于不想用Dockerfile創建lnmp環境的人來說,可以起到微調以容器創建的鏡像的作用
# 假設,我們已經通過容器創建了一個鏡像 lnmp:1.4.0 FROM lnmp:1.4.0 RUN yum install -y git # 當然你可以繼續遞歸:通過lnmp:1.4.0鏡像,創建容器,進入容器安裝應用,生成鏡像
對于運維來說,直接可以用Dockerfile創建lnmp環境鏡像
docker-composeDocker官方編排工具,負責實現對Docker容器集群的快速編排。定位:定義和運行多個Docker容器的應用.
現在我們有這樣的一個需求,我不單單需要lnmp環境,可能還需要lamp環境,可能還有redis。如果不用docker-compose 我們可能將上述講的命令每搭建一次就需要執行一遍,有沒有能統一管理的?有,就是docker-compose.
在環境搭建中的作用:
快速創建鏡像,快速創建并運行容器,實現統一管理。
lnmp: build: . # 根據當前路徑下的Dockerfile創建鏡像 ports: # 將定義的端口暴露并映射到本地 - "80:80" - "443:443" - "22:22" volumes: # 掛載文件夾 # nginx 配置文件夾 - ./conf/nginx/:/usr/local/nginx/conf/ # mysql 配置文件 - ./conf/mysql/my.cnf:/etc/my.cnf:rw # php配置文件 - ./conf/php/:/usr/local/php/etc/ # 項目目錄 - /data/Nutcloud/Ubuntu/website/:/data/website/ # nginx 日志 - /data/Nutcloud/Ubuntu/docker/lnmp/log:/ links: # 容器互聯 - redis:redis tty: true # 保證docker-compose 執行后,容器不自動退出 redis: image: redis:latest ports: - "6379:6379"
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/27100.html
摘要:學習心得前言耗時一周零三天,終于用搭建起自己的開發環境。來搭建一下環境,然后,桌面沒了。作為過來人,我只想說,一定要只做一件事,不要過多的去研究,我們只是想搭建本地運行環境。 docker學習心得 前言 耗時一周零三天,終于用docker搭建起自己的開發環境。詳細過程:請參考分解docker在lnmp環境搭建中的作用showImg(https://segmentfault.com/im...
摘要:基礎命令關于搜索下載查看或者刪除單個刪除多個刪除查看信息占用關于查看重啟停止雜項命令網絡相關清除網絡緩存查看網絡列表查看詳情掛載目錄清除緩存查看列表查看詳情系統相關系統信息查看占用清除所有包含構建失敗的鏡像沒有被使用的網絡配 docker基礎命令 關于images 搜索 docker search php 下載 docker pull php:7.3.6-fpm-alpine3....
摘要:基礎命令關于搜索下載查看或者刪除單個刪除多個刪除查看信息占用關于查看重啟停止雜項命令網絡相關清除網絡緩存查看網絡列表查看詳情掛載目錄清除緩存查看列表查看詳情系統相關系統信息查看占用清除所有包含構建失敗的鏡像沒有被使用的網絡配 docker基礎命令 關于images 搜索 docker search php 下載 docker pull php:7.3.6-fpm-alpine3....
摘要:因為站點的采用自簽名方式,所以瀏覽器有安全提示,繼續訪問就可以了,自己的站點用第三方認證證書替換即可。這是因為代碼是在容器中,容器啟動時會自動在中加上就是說,自動指向了容器動態生成的。則是跨容器訪問,參數用指定的名稱,端口用。 項目地址https://github.com/shmilylbel... 安裝docker 新版的docker for mac 下載地址docker-ce-de...
閱讀 2009·2021-11-24 09:39
閱讀 1878·2019-08-30 15:55
閱讀 2167·2019-08-30 15:53
閱讀 564·2019-08-29 13:16
閱讀 982·2019-08-26 12:20
閱讀 2378·2019-08-26 11:58
閱讀 3127·2019-08-26 10:19
閱讀 3296·2019-08-23 18:31