步骤 1:更新系统和软件源
首先,确保系统的软件包是最新的:
1 2
| sudo apt update sudo apt upgrade -y
|
步骤 2:编译安装 Nginx
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| apt install git -y
git clone https://github.com/nginx/nginx.git
cd nginx
auto/configure --prefix=/usr/local/nginx \ --with-http_ssl_module \ --with-stream_ssl_module \ --with-stream_ssl_preread_module \ --with-http_v2_module \ --with-http_gzip_static_module \ --with-pcre \ --with-http_realip_module \ --with-stream_geoip_module=dynamic \ --with-stream
make make install
|
安装开机自启服务
创建一个 systemd
服务文件:
1
| nano /usr/lib/systemd/system/nginx.service
|
将以下内容添加:
1 2 3 4 5 6 7 8 9 10 11 12 13
| [Unit] Description=nginx After=network.target [Service] Type=forking ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/usr/local/nginx/sbin/nginx -s reload ExecStop=/usr/local/nginx/sbin/nginx -s quit PrivateTmp=true [Install] WantedBy=multi-user.target
|
重新加载 systemd
配置并启动 Nginx:
1 2 3
| sudo systemctl daemon-reload sudo systemctl enable nginx.service sudo systemctl start nginx
|
查看nginx状态
1 2 3 4 5
| systemctl status nginx.service nginx.service - nginx Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor> Active: inactive (dead)
|
杀死nginx重启nginx
1 2 3 4
| pkill -9 nginx ps -aux|grep nginx root 29703 0.0 0.1 12112 1108 pts/0 R+ 04:10 0:00 grep --color=auto nginx systemctl start nginx
|
再次查看状态,变成了active,搞定。
将 Nginx 添加到 PATH
如果 Nginx 成功安装,并且你想在任何地方使用 nginx
命令,可以将 Nginx 的 sbin
目录添加到系统的 PATH
环境变量中。编辑 ~/.bashrc
文件(或 ~/.bash_profile
,取决于你的 shell 配置文件):
在文件的末尾添加以下行:
1
| export PATH=$PATH:/usr/local/nginx/sbin
|
保存并退出后,运行以下命令使修改生效:
现在,你可以在任何地方直接运行 nginx
命令了。
步骤 3:安装docker 和 docker-compose
安装依赖包
1
| apt install apt-transport-https ca-certificates curl software-properties-common
|
执行以下命令,导入 Docker 的 GPG 密钥:
1
| curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
|
将 Docker 的官方 APT 仓库添加到系统中:
1
| echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
再次更新包索引,以便系统能够识别新添加的 Docker 仓库:
安装 Docker CE(社区版):
安装完成后,启动 Docker 并设置开机自启动:
1 2
| systemctl start docker systemctl enable docker
|
通过运行以下命令来验证 Docker 是否安装成功:
输出类似如下内容,表示安装成功:Docker version 20.10.8, build 3967b7d
下载 Docker Compose
从 GitHub 上下载 Docker Compose 的最新稳定版本:
1
| sudo curl -L "https://github.com/docker/compose/releases/download/$(curl -s https://api.github.com/repos/docker/compose/releases/latest | jq -r .tag_name)/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
|
此命令会下载 Docker Compose 并将其保存到 /usr/local/bin/docker-compose
。
为 Docker Compose 文件授予可执行权限:
1
| sudo chmod +x /usr/local/bin/docker-compose
|
运行以下命令验证 Docker Compose 是否成功安装:
1
| docker-compose --version
|
输出类似如下内容,表示安装成功:
1
| docker-compose version 1.29.2, build 5becea4c
|
将当前用户添加到 Docker 组(推荐)
如果你不希望每次都使用 sudo
,可以将当前用户添加到 docker
组,这样就能直接运行 Docker 命令而无需 sudo
。
步骤:
将当前用户(fenxiang
)添加到 Docker 组:
1
| sudo usermod -aG docker fenxiang
|
这会将用户 fenxiang
添加到 Docker 组。
退出当前会话并重新登录,或者运行以下命令来应用组的更改:
或者退出并重新登录,以便 fenxiang
用户可以继承新的组权限。
之后,你就可以直接运行 Docker 和 Docker Compose 命令,而无需使用 sudo
了:
验证权限是否生效
在你将用户添加到 docker
组之后,验证一下是否生效:
如果没有出现权限问题,并且能够成功列出正在运行的容器,那么权限已经正确配置。
步骤 4:安装acme
安装很简单,一条命令:
1
| curl https://get.acme.sh | sh -s email=ssy329504125@gmail.com
|
acme使用说明
1 2
| export CF_Key="763eac4f1bcebd8b5c95e9fc50d010b4" export CF_Email="alice@example.com"
|
1
| ./acme.sh --issue --dns dns_cf -d example.com -d '*.example.com'
|
安装证书
1 2 3
| acme.sh --install-cert -d uiuuyr.top \ --key-file /usr/local/nginx/conf/cert/key.pem \ --fullchain-file /usr/local/nginx/conf/cert/cert.pem
|