Penpot 一键安装脚本Ubuntu 20.04/22.04

Penpot 一键安装脚本(Ubuntu 20.04/22.04)

新建文件 install_penpot.sh,粘贴以下全部内容:
#!/bin/bash
set -e

echo “==================== 开始部署 Penpot ====================”

# 1. 卸载旧版Docker
sudo apt remove -y docker.io docker-compose docker-compose-v2 || true

# 2. 安装依赖
sudo apt update
sudo apt install -y ca-certificates curl gnupg

# 3. 添加Docker官方源
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg –dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

echo “deb [arch=$(dpkg –print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable” | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 4. 安装 Docker & Compose
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

# 5. 启动并设置开机自启
sudo systemctl enable –now docker

# 6. 当前用户加入docker组(免sudo)
sudo usermod -aG docker $USER
newgrp docker << EOF

# 7. 创建部署目录 & 拉取配置文件
mkdir -p ~/penpot && cd ~/penpot
wget -q https://raw.githubusercontent.com/penpot/penpot/main/docker/images/docker-compose.yaml

# 8. 后台启动 Penpot
docker compose -p penpot up -d
拉取失败修复:
1. 编辑配置文件:
在终端执行以下命令,它会用新的镜像源列表覆盖旧文件。
“`bash
sudo tee /etc/docker/daemon.json > /dev/null <<-‘EOF’
{
“registry-mirrors”: [
“https://docker.xuanyuan.me”,
“https://docker.1ms.run”,
“https://docker.m.daocloud.io”
]
}
EOF
“`
2. 重启 Docker 服务:
“`bash
sudo systemctl restart docker
“`
3. 验证配置是否生效:
“`bash
docker info | grep -A 5 “Registry Mirrors”

echo “========================================================”
echo “Penpot 部署完成!”
echo “访问地址:http://$(hostname -I | awk ‘{print $1}’):9001”
echo “查看状态:docker compose -p penpot ps”
echo “查看日志:docker compose -p penpot logs -f”
echo “========================================================”
EOF

echo “脚本执行完毕,请使用上面地址访问 Penpot”
执行步骤

1. 赋予执行权限
chmod +x install_penpot.sh
2. 运行一键安装
./install_penpot.sh
后续常用命令
# 停止服务
cd ~/penpot && docker compose -p penpot down

# 重启服务
cd ~/penpot && docker compose -p penpot restart

# 升级版本
cd ~/penpot && docker compose -p penpot pull && docker compose -p penpot up -d
生产环境补充(必做)

进入目录修改配置文件,配置域名、密钥、邮件:
cd ~/penpot
nano docker-compose.yaml
找到 environment 段修改参数,改完重启:
docker compose -p penpot up -d
防火墙放行(UFW)
sudo ufw allow 9001/tcp
sudo ufw reload

firewall-cmd –add-port=9001/tcp –permanent
firewall-cmd –reload
firewall-cmd –list-ports

cd penpot/

docker compose ps

docker compose down
docker compose up