# 如何在 Dokploy 上部署我的第一个应用？

https://www.seturack.com/zh/knowledgebase/article/how-do-i-deploy-my-first-app-on-dokploy

1. 在面板中打开**我的服务器**，点击您的服务器。
2. 在**概览**标签页中，等待**应用**一行显示“Dokploy 已就绪”。页面会自动刷新。
3. 打开**面板地址**一行中的 HTTPS 链接，输入**邮箱**和**密码**两行的信息。

## 您的第一个应用

1. 在 **Projects** 页面点击 **Create Project**，然后用 **Create Service** 添加一个 **Application**。
2. 在应用的 **Provider** 部分选择 **Git**。填写 **Repository URL**、**Branch**，必要时再填 **Build Path**，然后点击 **Save**。
3. 在 **Environment** 标签页中填写您的变量。构建时需要的变量也要放进 **Build-time Arguments**。
4. 在 **Domains** 标签页中点击 **Add Domain**：**Host** 填您的域名，**Container Port** 填应用的端口，**HTTPS** 开启，**Certificate Provider** 选 Let's Encrypt。
5. 点击 **Deploy**。

## 用 git push 部署

1. 从应用的 **Deployments** 标签页复制 **Webhook URL**。请保密这个地址。
2. 在 GitHub 上打开仓库的 **Settings**，进入 **Webhooks** 并点击 **Add webhook**。**Payload URL** 填上述地址，**Content type** 选 `application/json`，事件只选 push。

此后，每次向所选分支推送，都会构建并发布新版本，向其他分支推送则会被忽略。

## 关闭 3000 端口

面板可以通过 HTTPS 地址打开之后，就可以关闭通过 IP 的访问。Docker 会绕过 ufw 处理它发布的端口，所以 ufw 做不到这一点。请[通过 SSH 连接](https://www.seturack.com/zh/knowledgebase/article/how-to-connect-with-ssh)并运行官方命令：

`docker service update --publish-rm "published=3000,target=3000,mode=host" dokploy`

如果无法签发证书，面板地址就是 `http://IP:3000`。这种情况下请保持该端口开放，并在 **Settings** 的 **Web Server** 页面中设置域名。

**还没有服务器？** [订购预装 Dokploy 的服务器](https://www.seturack.com/zh/dokploy-vps)：配置由您选择，按所选配置付费。
