diff --git a/watchtower/metadata/app.json b/watchtower/metadata/app.json
new file mode 100644
index 00000000..9005d053
--- /dev/null
+++ b/watchtower/metadata/app.json
@@ -0,0 +1,15 @@
+
+{
+ "key": "watchtower",
+ "name": "watchtower",
+ "tags": ["Tool"],
+ "versions": ["latest"],
+ "shortDescZh": "自动更新Docker容器基础镜像的工具。",
+ "shortDescEn": "Tool to automatically update Docker container base images.",
+ "type": "tool",
+ "limit": 1,
+ "crossVersionUpdate": false,
+ "website": "https://github.com/containrrr/watchtower",
+ "github": "https://github.com/containrrr/watchtower",
+ "document": "https://containrrr.dev/watchtower/"
+}
diff --git a/watchtower/metadata/logo.png b/watchtower/metadata/logo.png
new file mode 100644
index 00000000..4987592b
Binary files /dev/null and b/watchtower/metadata/logo.png differ
diff --git a/watchtower/versions/latest/.env.sample b/watchtower/versions/latest/.env.sample
new file mode 100644
index 00000000..8e81d4b2
--- /dev/null
+++ b/watchtower/versions/latest/.env.sample
@@ -0,0 +1,3 @@
+CONTAINER_NAME="watchtower"
+ENV1='WATCHTOWER_NO_STARTUP_MESSAGE'
+COMMAND1='--schedule "0 0 4 * * *" --cleanup'
\ No newline at end of file
diff --git a/watchtower/versions/latest/README.md b/watchtower/versions/latest/README.md
new file mode 100644
index 00000000..6f348614
--- /dev/null
+++ b/watchtower/versions/latest/README.md
@@ -0,0 +1,175 @@
+
+

+
+ # Watchtower
+
+ A process for automating Docker container base image updates.
+
+
+ [](https://circleci.com/gh/containrrr/watchtower)
+ [](https://codecov.io/gh/containrrr/watchtower)
+ [](https://godoc.org/github.com/containrrr/watchtower)
+ [](https://goreportcard.com/report/github.com/containrrr/watchtower)
+ [](https://github.com/containrrr/watchtower/releases)
+ [](https://www.apache.org/licenses/LICENSE-2.0)
+ [](https://www.codacy.com/gh/containrrr/watchtower/dashboard?utm_source=github.com&utm_medium=referral&utm_content=containrrr/watchtower&utm_campaign=Badge_Grade)
+ [](#contributors)
+ [](https://hub.docker.com/r/containrrr/watchtower)
+
+
+
+## Quick Start
+
+With watchtower you can update the running version of your containerized app simply by pushing a new image to the Docker Hub or your own image registry.
+
+Watchtower will pull down your new image, gracefully shut down your existing container and restart it with the same options that were used when it was deployed initially. Run the watchtower container with the following command:
+
+```
+$ docker run --detach \
+ --name watchtower \
+ --volume /var/run/docker.sock:/var/run/docker.sock \
+ containrrr/watchtower
+```
+
+## Documentation
+The full documentation is available at https://containrrr.dev/watchtower.
+
+## Contributors
+
+Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
+
+
+
+
+
+
+
+
+
+
+
+This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!
+
diff --git a/watchtower/versions/latest/config.json b/watchtower/versions/latest/config.json
new file mode 100644
index 00000000..5f9448f5
--- /dev/null
+++ b/watchtower/versions/latest/config.json
@@ -0,0 +1,30 @@
+{
+ "formFields": [
+ {
+ "type": "text",
+ "labelZh": "环境参数(以;分割)",
+ "labelEn": "Environmental parameters (split by ;)",
+ "required": true,
+ "default": "WATCHTOWER_NO_STARTUP_MESSAGE",
+ "envKey": "ENV1",
+ "edit": true
+ },
+ {
+ "type": "text",
+ "labelZh": "命令参数(以空格分割)",
+ "labelEn": "Command parameters (separated by spaces)",
+ "required": true,
+ "default": "--schedule \"0 0 4 * * *\" --cleanup",
+ "envKey": "COMMAND1",
+ "edit": true
+ },
+ {
+ "type": "text",
+ "labelZh": "更多参数命令看官方文档获取",
+ "labelEn": "See the official documentation for more parameter commands",
+ "required": false,
+ "default": "这是一个提示/This is a tip",
+ "edit": true
+ }
+ ]
+}
diff --git a/watchtower/versions/latest/docker-compose.yml b/watchtower/versions/latest/docker-compose.yml
new file mode 100644
index 00000000..cfce3f9f
--- /dev/null
+++ b/watchtower/versions/latest/docker-compose.yml
@@ -0,0 +1,20 @@
+version: "3"
+services:
+ watchtower:
+ container_name: ${CONTAINER_NAME}
+ restart: always
+ networks:
+ - 1panel-network
+ volumes:
+ - /var/run/docker.sock:/var/run/docker.sock
+ environment:
+ - TZ=Asia/Shanghai
+ - ${ENV1}
+ command: ${COMMAND1}
+ image: containrrr/watchtower
+ labels:
+ createdBy: "Apps"
+
+networks:
+ 1panel-network:
+ external: true