一、Docker 安裝
Docker 是一個開源項目,它可以幫助我們將應用程序和它們的依賴打包成一個容器,並且可以在不同的服務器上,不同的操作系統上運行。這樣就有效地解決了在不同環境中部署應用程序的問題。
要在 Linux 操作系統上安裝 Docker,需要執行以下步驟:
$ sudo apt-get update
$ sudo apt-get install docker.io
$ sudo systemctl start docker
$ sudo systemctl enable docker
二、Docker 鏡像
Docker 鏡像是用於創建 Docker 容器的一個模板。它包含了操作系統、應用程序和它們的依賴。Docker 鏡像可以從 Docker Hub 或者自己創建。
要拉取官方的 Nginx 鏡像,需要執行以下命令:
$ sudo docker pull nginx
可以使用以下命令來列出已經拉取的鏡像:
$ sudo docker images
如果需要自己創建 Docker 鏡像,可以使用 Dockerfile 文件。
Dockerfile 文件示例:
FROM ubuntu:latest
RUN apt-get update -y
RUN apt-get install nginx -y
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
上述 Dockerfile 文件描述了一個從 Ubuntu 最新版本開始構建的鏡像,然後更新系統並安裝 Nginx,並將容器的 80 端口暴露出來,並啟動 Nginx 服務。
要構建 Docker 鏡像,需要執行以下命令:
$ sudo docker build -t mynginx .
其中,-t mynginx
表示給構建的鏡像取一個名字為 mynginx。
可以使用以下命令運行已經構建好的鏡像:
$ sudo docker run -d -p 80:80 mynginx
其中,-d
表示容器在後台運行,-p 80:80
表示將容器的 80 端口映射到宿主機的 80 端口,mynginx 表示運行的鏡像名。
三、使用 Docker Compose
Docker Compose 是一個工具,它可以幫助我們定義和運行多個 Docker 容器。使用 Docker Compose,我們可以快速地啟動一組容器,並且可以統一管理這些容器。
要使用 Docker Compose,需要創建一個 docker-compose.yml 文件。
docker-compose.yml 文件內容示例:
version: '3'
services:
nginx:
image: nginx
ports:
- "80:80"
上述示例定義了一個 service 名稱為 nginx,使用 Nginx 官方鏡像,將它的容器端口 80 映射到宿主機的 80 端口。
在 docker-compose.yml 所在目錄執行以下命令啟動容器:
$ sudo docker-compose up
如果需要在後台運行,可以加上 -d
參數:
$ sudo docker-compose up -d
四、使用 Nginx 配置文件
如果需要對 Nginx 進行配置,可以將自己的配置文件掛載到容器裏面。
示例:
將新建一個目錄 mynginx,將容器啟動命令改為:
$ sudo docker run -d -p 80:80 -v /pathto/mynginx:/etc/nginx/conf.d mynginx
其中,-v /pathto/mynginx:/etc/nginx/conf.d
表示將 mynginx 目錄掛載到容器的 /etc/nginx/conf.d 目錄下。
在 mynginx 目錄下新建一個配置文件 my.conf,內容如下:
server {
listen 80;
server_name mydomain.com;
location / {
root /var/www/html;
index index.html;
}
}
然後重啟容器就可以使用自定義的配置文件了。
$ sudo docker restart container_id
五、總結
本文對 Docker 安裝 Nginx 做了詳細的闡述,並從 Docker 安裝、Docker 鏡像、Docker Compose、使用 Nginx 配置文件這幾個方面進行了講解。Docker 鏡像是容器化部署的基礎,Docker Compose 可以幫助我們更方便地管理一組容器,使用 Nginx 配置文件可以對 Nginx 進行自定義配置。
原創文章,作者:IDEOS,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/333703.html