Caddy2学习笔记——Caddy2的安装、部署和编译小白教程

个人环境概述

  1. 本人拥有一个国内云服务商的云主机和一个备案好的域名,希望通过caddy2来作为web服务器。
  2. 我的云主机是公网ip,地址为:43.126.100.78;我备案好的域名是:hotgirl.com。后面的文章都以上述的ip和域名来进行讲解。
  3. 域名hotgirl.com已经通过云服务商的域名解析功能,解析到43.126.100.78。

Caddy2的部署

一、安装

1.云主机安装

这里推荐去官网介绍的界面复制粘贴安装命令,地址是:官网安装命令

sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy

上面的命令就是安装命令,安装结束之后,可以通过“caddy version”查看是否安装成功

# 查看caddy是否安装成功
caddy version
2.常用命令

安装结束后要手动启动。

# 开机自启
systemctl enable caddy

# 启动caddy2
systemctl start caddy

# 停止caddy2
systemctl stop caddy

# 重载配置caddy配置文件(修改配置文件后执行)
systemctl reload caddy

# 查看caddy运行状态
systemctl status caddy
3.为云主机提供web服务

Caddy2的编辑默认的配置文件:/etc/caddy/Caddyfile ,每次修改配置文件后,使用 systemctl reload caddy 重载配置。
静态网页配置如下:

hotgirl.com {
    root * /home/www/mywebsite
    file_server
    tls your@email.com
}

然后在你的云主机/home/www/mywebsite路径下,写一个简单的html,这样一个简易的网站就做好了。并且自动帮你申领ssl证书,自动续期,你就说强不强大。
hotgirl.com

Caddy2的编译

上面讲得安装过程是官方提供了预编译的二进制文件,通常来说够用了,但对于一些特殊情况下的环境,就需要集成第三方插件,这里需采用官方提供的 xcaddy 来自行进行编译。

1. Golang 环境安装

我的云服务器是Ubuntu系统,所以编译环境默认为Ubuntu系统,使用 root 用户,其他系统的同学,请自行调整相关目录以及配置。

a. 首先下载go语言的SDK压缩包

cd ~
wget https://golang.org/dl/go1.20.2.linux-amd64.tar.gz

b.解压go语言的 SDK 压缩包

# 解压
tar -zxvf go1.20.2.linux-amd64.tar.gz

c.目录设置

# 移动到自定义目录
mkdir -p /opt/devtools
mv go /opt/devtools/go

# 创建 go 相关目录
mkdir -p ${HOME}/gopath/{src,bin,pkg}

d.环境变量设置

# 打开profile文件
vim /etc/profile

# 添加以下内容
export GOROOT='/opt/devtools/go'
export GOPATH="${HOME}/gopath"
# 如果是国内机器,需要导入添加代理
# export GOPROXY='https://goproxy.cn' 
export PATH="${GOROOT}/bin:${GOPATH}/bin:${PATH}"

# 让配置生效
source /etc/profile

e.测试安装效果

#键入命令
go version

# 屏幕输出
go version go1.20.2 linux/amd64

2. xcaddy安装

如果已经是root用户,则需要 把下面命令中的 sudo 去掉。

sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/xcaddy/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-xcaddy-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/xcaddy/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-xcaddy.list
sudo apt update
sudo apt install xcaddy

安装完成后,通过查看版本验证是否安装成功。

# 查看 xcaddy 版本
xcaddy version

# 屏幕输出
v0.3.2 h1:Y1QPKq97GrSG6ryMhGTw1g9GHH8wRmwnCzOcN+f+gCY=

3. Caddy2编译

ubuntu系统需要安装 jq、curl、git ,如果没有请使用 apt install -y curl git jq 命令安装;自行编译的目的是增加第三方插件方便使用,官方列出的插件可以从 Download 页面获取到。其他插件可以从 GitHub 上查找,整理好这些插件列表以后只需要使用 xcaddy 编译即可,命令如下:

# 获取最新版本号,其实直接去 GitHub realse 页复制以下就行
# 这里转化为脚本是为了方便自动化

#获取caddy2的最新版本号,并导入变量version
export version=$(curl -s "https://api.github.com/repos/caddyserver/caddy/releases/latest" | jq -r .tag_name)

# 使用 xcaddy 编译
xcaddy build ${version} --output ./caddy_${version}  \
			--with github.com/caddy-dns/alidns 

我这里只添加了alidns这个插件,需要其他插件的自行在命令行后面加上就是。
编译完成后,在root目录下会出现一个 caddy_v2.6.4 的文件,然后把这个文件拷贝并覆盖到/usr/bin/caddy这个路径下,替换之前记得先停止caddy服务

# 替换二进制文件:将编译的 /root/caddy_v2.6.4 文件移至 /usr/bin/caddy 
systemctl stop caddy
rm -f /usr/bin/caddy
mv ./caddy_v2.6.4 /usr/bin/caddy
# 查看caddy是否安装成功
caddy version
  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值