feat: migration to fumadocs 14

This commit is contained in:
Mauricio Siu
2024-11-09 21:15:20 -06:00
parent 0dd0161f1e
commit 8267c4a7b6
229 changed files with 22179 additions and 2109 deletions

View File

@@ -0,0 +1,36 @@
---
title: Admin
full: true
_openapi:
toc:
- depth: 2
title: Admin one
url: '#admin-one'
- depth: 2
title: Admin create User Invitation
url: '#admin-create-user-invitation'
- depth: 2
title: Admin remove User
url: '#admin-remove-user'
- depth: 2
title: Admin get User By Token
url: '#admin-get-user-by-token'
- depth: 2
title: Admin assign Permissions
url: '#admin-assign-permissions'
structuredData:
headings:
- content: Admin one
id: admin-one
- content: Admin create User Invitation
id: admin-create-user-invitation
- content: Admin remove User
id: admin-remove-user
- content: Admin get User By Token
id: admin-get-user-by-token
- content: Admin assign Permissions
id: admin-assign-permissions
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"get","path":"/admin.one"},{"method":"post","path":"/admin.createUserInvitation"},{"method":"post","path":"/admin.removeUser"},{"method":"get","path":"/admin.getUserByToken"},{"method":"post","path":"/admin.assignPermissions"}]} hasHead={true} />

View File

@@ -0,0 +1,121 @@
---
title: Application
full: true
_openapi:
toc:
- depth: 2
title: Application create
url: '#application-create'
- depth: 2
title: Application one
url: '#application-one'
- depth: 2
title: Application reload
url: '#application-reload'
- depth: 2
title: Application delete
url: '#application-delete'
- depth: 2
title: Application stop
url: '#application-stop'
- depth: 2
title: Application start
url: '#application-start'
- depth: 2
title: Application redeploy
url: '#application-redeploy'
- depth: 2
title: Application save Environment
url: '#application-save-environment'
- depth: 2
title: Application save Build Type
url: '#application-save-build-type'
- depth: 2
title: Application save Github Provider
url: '#application-save-github-provider'
- depth: 2
title: Application save Gitlab Provider
url: '#application-save-gitlab-provider'
- depth: 2
title: Application save Bitbucket Provider
url: '#application-save-bitbucket-provider'
- depth: 2
title: Application save Docker Provider
url: '#application-save-docker-provider'
- depth: 2
title: Application save Git Prodiver
url: '#application-save-git-prodiver'
- depth: 2
title: Application mark Running
url: '#application-mark-running'
- depth: 2
title: Application update
url: '#application-update'
- depth: 2
title: Application refresh Token
url: '#application-refresh-token'
- depth: 2
title: Application deploy
url: '#application-deploy'
- depth: 2
title: Application clean Queues
url: '#application-clean-queues'
- depth: 2
title: Application read Traefik Config
url: '#application-read-traefik-config'
- depth: 2
title: Application update Traefik Config
url: '#application-update-traefik-config'
- depth: 2
title: Application read App Monitoring
url: '#application-read-app-monitoring'
structuredData:
headings:
- content: Application create
id: application-create
- content: Application one
id: application-one
- content: Application reload
id: application-reload
- content: Application delete
id: application-delete
- content: Application stop
id: application-stop
- content: Application start
id: application-start
- content: Application redeploy
id: application-redeploy
- content: Application save Environment
id: application-save-environment
- content: Application save Build Type
id: application-save-build-type
- content: Application save Github Provider
id: application-save-github-provider
- content: Application save Gitlab Provider
id: application-save-gitlab-provider
- content: Application save Bitbucket Provider
id: application-save-bitbucket-provider
- content: Application save Docker Provider
id: application-save-docker-provider
- content: Application save Git Prodiver
id: application-save-git-prodiver
- content: Application mark Running
id: application-mark-running
- content: Application update
id: application-update
- content: Application refresh Token
id: application-refresh-token
- content: Application deploy
id: application-deploy
- content: Application clean Queues
id: application-clean-queues
- content: Application read Traefik Config
id: application-read-traefik-config
- content: Application update Traefik Config
id: application-update-traefik-config
- content: Application read App Monitoring
id: application-read-app-monitoring
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/application.create"},{"method":"get","path":"/application.one"},{"method":"post","path":"/application.reload"},{"method":"post","path":"/application.delete"},{"method":"post","path":"/application.stop"},{"method":"post","path":"/application.start"},{"method":"post","path":"/application.redeploy"},{"method":"post","path":"/application.saveEnvironment"},{"method":"post","path":"/application.saveBuildType"},{"method":"post","path":"/application.saveGithubProvider"},{"method":"post","path":"/application.saveGitlabProvider"},{"method":"post","path":"/application.saveBitbucketProvider"},{"method":"post","path":"/application.saveDockerProvider"},{"method":"post","path":"/application.saveGitProdiver"},{"method":"post","path":"/application.markRunning"},{"method":"post","path":"/application.update"},{"method":"post","path":"/application.refreshToken"},{"method":"post","path":"/application.deploy"},{"method":"post","path":"/application.cleanQueues"},{"method":"get","path":"/application.readTraefikConfig"},{"method":"post","path":"/application.updateTraefikConfig"},{"method":"get","path":"/application.readAppMonitoring"}]} hasHead={true} />

View File

@@ -0,0 +1,86 @@
---
title: Auth
full: true
_openapi:
toc:
- depth: 2
title: Auth create Admin
url: '#auth-create-admin'
- depth: 2
title: Auth create User
url: '#auth-create-user'
- depth: 2
title: Auth login
url: '#auth-login'
- depth: 2
title: Auth get
url: '#auth-get'
- depth: 2
title: Auth logout
url: '#auth-logout'
- depth: 2
title: Auth update
url: '#auth-update'
- depth: 2
title: Auth generate Token
url: '#auth-generate-token'
- depth: 2
title: Auth one
url: '#auth-one'
- depth: 2
title: Auth generate2 F A Secret
url: '#auth-generate2-f-a-secret'
- depth: 2
title: Auth verify2 F A Setup
url: '#auth-verify2-f-a-setup'
- depth: 2
title: Auth verify Login2 F A
url: '#auth-verify-login2-f-a'
- depth: 2
title: Auth disable2 F A
url: '#auth-disable2-f-a'
- depth: 2
title: Auth send Reset Password Email
url: '#auth-send-reset-password-email'
- depth: 2
title: Auth reset Password
url: '#auth-reset-password'
- depth: 2
title: Auth confirm Email
url: '#auth-confirm-email'
structuredData:
headings:
- content: Auth create Admin
id: auth-create-admin
- content: Auth create User
id: auth-create-user
- content: Auth login
id: auth-login
- content: Auth get
id: auth-get
- content: Auth logout
id: auth-logout
- content: Auth update
id: auth-update
- content: Auth generate Token
id: auth-generate-token
- content: Auth one
id: auth-one
- content: Auth generate2 F A Secret
id: auth-generate2-f-a-secret
- content: Auth verify2 F A Setup
id: auth-verify2-f-a-setup
- content: Auth verify Login2 F A
id: auth-verify-login2-f-a
- content: Auth disable2 F A
id: auth-disable2-f-a
- content: Auth send Reset Password Email
id: auth-send-reset-password-email
- content: Auth reset Password
id: auth-reset-password
- content: Auth confirm Email
id: auth-confirm-email
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/auth.createAdmin"},{"method":"post","path":"/auth.createUser"},{"method":"post","path":"/auth.login"},{"method":"get","path":"/auth.get"},{"method":"post","path":"/auth.logout"},{"method":"post","path":"/auth.update"},{"method":"post","path":"/auth.generateToken"},{"method":"get","path":"/auth.one"},{"method":"get","path":"/auth.generate2FASecret"},{"method":"post","path":"/auth.verify2FASetup"},{"method":"post","path":"/auth.verifyLogin2FA"},{"method":"post","path":"/auth.disable2FA"},{"method":"post","path":"/auth.sendResetPasswordEmail"},{"method":"post","path":"/auth.resetPassword"},{"method":"post","path":"/auth.confirmEmail"}]} hasHead={true} />

View File

@@ -0,0 +1,51 @@
---
title: Backup
full: true
_openapi:
toc:
- depth: 2
title: Backup create
url: '#backup-create'
- depth: 2
title: Backup one
url: '#backup-one'
- depth: 2
title: Backup update
url: '#backup-update'
- depth: 2
title: Backup remove
url: '#backup-remove'
- depth: 2
title: Backup manual Backup Postgres
url: '#backup-manual-backup-postgres'
- depth: 2
title: Backup manual Backup My Sql
url: '#backup-manual-backup-my-sql'
- depth: 2
title: Backup manual Backup Mariadb
url: '#backup-manual-backup-mariadb'
- depth: 2
title: Backup manual Backup Mongo
url: '#backup-manual-backup-mongo'
structuredData:
headings:
- content: Backup create
id: backup-create
- content: Backup one
id: backup-one
- content: Backup update
id: backup-update
- content: Backup remove
id: backup-remove
- content: Backup manual Backup Postgres
id: backup-manual-backup-postgres
- content: Backup manual Backup My Sql
id: backup-manual-backup-my-sql
- content: Backup manual Backup Mariadb
id: backup-manual-backup-mariadb
- content: Backup manual Backup Mongo
id: backup-manual-backup-mongo
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/backup.create"},{"method":"get","path":"/backup.one"},{"method":"post","path":"/backup.update"},{"method":"post","path":"/backup.remove"},{"method":"post","path":"/backup.manualBackupPostgres"},{"method":"post","path":"/backup.manualBackupMySql"},{"method":"post","path":"/backup.manualBackupMariadb"},{"method":"post","path":"/backup.manualBackupMongo"}]} hasHead={true} />

View File

@@ -0,0 +1,46 @@
---
title: Bitbucket
full: true
_openapi:
toc:
- depth: 2
title: Bitbucket create
url: '#bitbucket-create'
- depth: 2
title: Bitbucket one
url: '#bitbucket-one'
- depth: 2
title: Bitbucket bitbucket Providers
url: '#bitbucket-bitbucket-providers'
- depth: 2
title: Bitbucket get Bitbucket Repositories
url: '#bitbucket-get-bitbucket-repositories'
- depth: 2
title: Bitbucket get Bitbucket Branches
url: '#bitbucket-get-bitbucket-branches'
- depth: 2
title: Bitbucket test Connection
url: '#bitbucket-test-connection'
- depth: 2
title: Bitbucket update
url: '#bitbucket-update'
structuredData:
headings:
- content: Bitbucket create
id: bitbucket-create
- content: Bitbucket one
id: bitbucket-one
- content: Bitbucket bitbucket Providers
id: bitbucket-bitbucket-providers
- content: Bitbucket get Bitbucket Repositories
id: bitbucket-get-bitbucket-repositories
- content: Bitbucket get Bitbucket Branches
id: bitbucket-get-bitbucket-branches
- content: Bitbucket test Connection
id: bitbucket-test-connection
- content: Bitbucket update
id: bitbucket-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/bitbucket.create"},{"method":"get","path":"/bitbucket.one"},{"method":"get","path":"/bitbucket.bitbucketProviders"},{"method":"get","path":"/bitbucket.getBitbucketRepositories"},{"method":"get","path":"/bitbucket.getBitbucketBranches"},{"method":"post","path":"/bitbucket.testConnection"},{"method":"post","path":"/bitbucket.update"}]} hasHead={true} />

View File

@@ -0,0 +1,31 @@
---
title: Certificates
full: true
_openapi:
toc:
- depth: 2
title: Certificates create
url: '#certificates-create'
- depth: 2
title: Certificates one
url: '#certificates-one'
- depth: 2
title: Certificates remove
url: '#certificates-remove'
- depth: 2
title: Certificates all
url: '#certificates-all'
structuredData:
headings:
- content: Certificates create
id: certificates-create
- content: Certificates one
id: certificates-one
- content: Certificates remove
id: certificates-remove
- content: Certificates all
id: certificates-all
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/certificates.create"},{"method":"get","path":"/certificates.one"},{"method":"post","path":"/certificates.remove"},{"method":"get","path":"/certificates.all"}]} hasHead={true} />

View File

@@ -0,0 +1,31 @@
---
title: Cluster
full: true
_openapi:
toc:
- depth: 2
title: Cluster get Nodes
url: '#cluster-get-nodes'
- depth: 2
title: Cluster remove Worker
url: '#cluster-remove-worker'
- depth: 2
title: Cluster add Worker
url: '#cluster-add-worker'
- depth: 2
title: Cluster add Manager
url: '#cluster-add-manager'
structuredData:
headings:
- content: Cluster get Nodes
id: cluster-get-nodes
- content: Cluster remove Worker
id: cluster-remove-worker
- content: Cluster add Worker
id: cluster-add-worker
- content: Cluster add Manager
id: cluster-add-manager
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"get","path":"/cluster.getNodes"},{"method":"post","path":"/cluster.removeWorker"},{"method":"get","path":"/cluster.addWorker"},{"method":"get","path":"/cluster.addManager"}]} hasHead={true} />

View File

@@ -0,0 +1,96 @@
---
title: Compose
full: true
_openapi:
toc:
- depth: 2
title: Compose create
url: '#compose-create'
- depth: 2
title: Compose one
url: '#compose-one'
- depth: 2
title: Compose update
url: '#compose-update'
- depth: 2
title: Compose delete
url: '#compose-delete'
- depth: 2
title: Compose clean Queues
url: '#compose-clean-queues'
- depth: 2
title: Compose load Services
url: '#compose-load-services'
- depth: 2
title: Compose fetch Source Type
url: '#compose-fetch-source-type'
- depth: 2
title: Compose randomize Compose
url: '#compose-randomize-compose'
- depth: 2
title: Compose get Converted Compose
url: '#compose-get-converted-compose'
- depth: 2
title: Compose deploy
url: '#compose-deploy'
- depth: 2
title: Compose redeploy
url: '#compose-redeploy'
- depth: 2
title: Compose stop
url: '#compose-stop'
- depth: 2
title: Compose get Default Command
url: '#compose-get-default-command'
- depth: 2
title: Compose refresh Token
url: '#compose-refresh-token'
- depth: 2
title: Compose deploy Template
url: '#compose-deploy-template'
- depth: 2
title: Compose templates
url: '#compose-templates'
- depth: 2
title: Compose get Tags
url: '#compose-get-tags'
structuredData:
headings:
- content: Compose create
id: compose-create
- content: Compose one
id: compose-one
- content: Compose update
id: compose-update
- content: Compose delete
id: compose-delete
- content: Compose clean Queues
id: compose-clean-queues
- content: Compose load Services
id: compose-load-services
- content: Compose fetch Source Type
id: compose-fetch-source-type
- content: Compose randomize Compose
id: compose-randomize-compose
- content: Compose get Converted Compose
id: compose-get-converted-compose
- content: Compose deploy
id: compose-deploy
- content: Compose redeploy
id: compose-redeploy
- content: Compose stop
id: compose-stop
- content: Compose get Default Command
id: compose-get-default-command
- content: Compose refresh Token
id: compose-refresh-token
- content: Compose deploy Template
id: compose-deploy-template
- content: Compose templates
id: compose-templates
- content: Compose get Tags
id: compose-get-tags
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/compose.create"},{"method":"get","path":"/compose.one"},{"method":"post","path":"/compose.update"},{"method":"post","path":"/compose.delete"},{"method":"post","path":"/compose.cleanQueues"},{"method":"get","path":"/compose.loadServices"},{"method":"post","path":"/compose.fetchSourceType"},{"method":"post","path":"/compose.randomizeCompose"},{"method":"get","path":"/compose.getConvertedCompose"},{"method":"post","path":"/compose.deploy"},{"method":"post","path":"/compose.redeploy"},{"method":"post","path":"/compose.stop"},{"method":"get","path":"/compose.getDefaultCommand"},{"method":"post","path":"/compose.refreshToken"},{"method":"post","path":"/compose.deployTemplate"},{"method":"get","path":"/compose.templates"},{"method":"get","path":"/compose.getTags"}]} hasHead={true} />

View File

@@ -0,0 +1,26 @@
---
title: Deployment
full: true
_openapi:
toc:
- depth: 2
title: Deployment all
url: '#deployment-all'
- depth: 2
title: Deployment all By Compose
url: '#deployment-all-by-compose'
- depth: 2
title: Deployment all By Server
url: '#deployment-all-by-server'
structuredData:
headings:
- content: Deployment all
id: deployment-all
- content: Deployment all By Compose
id: deployment-all-by-compose
- content: Deployment all By Server
id: deployment-all-by-server
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"get","path":"/deployment.all"},{"method":"get","path":"/deployment.allByCompose"},{"method":"get","path":"/deployment.allByServer"}]} hasHead={true} />

View File

@@ -0,0 +1,41 @@
---
title: Destination
full: true
_openapi:
toc:
- depth: 2
title: Destination create
url: '#destination-create'
- depth: 2
title: Destination test Connection
url: '#destination-test-connection'
- depth: 2
title: Destination one
url: '#destination-one'
- depth: 2
title: Destination all
url: '#destination-all'
- depth: 2
title: Destination remove
url: '#destination-remove'
- depth: 2
title: Destination update
url: '#destination-update'
structuredData:
headings:
- content: Destination create
id: destination-create
- content: Destination test Connection
id: destination-test-connection
- content: Destination one
id: destination-one
- content: Destination all
id: destination-all
- content: Destination remove
id: destination-remove
- content: Destination update
id: destination-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/destination.create"},{"method":"post","path":"/destination.testConnection"},{"method":"get","path":"/destination.one"},{"method":"get","path":"/destination.all"},{"method":"post","path":"/destination.remove"},{"method":"post","path":"/destination.update"}]} hasHead={true} />

View File

@@ -0,0 +1,36 @@
---
title: Docker
full: true
_openapi:
toc:
- depth: 2
title: Docker get Containers
url: '#docker-get-containers'
- depth: 2
title: Docker restart Container
url: '#docker-restart-container'
- depth: 2
title: Docker get Config
url: '#docker-get-config'
- depth: 2
title: Docker get Containers By App Name Match
url: '#docker-get-containers-by-app-name-match'
- depth: 2
title: Docker get Containers By App Label
url: '#docker-get-containers-by-app-label'
structuredData:
headings:
- content: Docker get Containers
id: docker-get-containers
- content: Docker restart Container
id: docker-restart-container
- content: Docker get Config
id: docker-get-config
- content: Docker get Containers By App Name Match
id: docker-get-containers-by-app-name-match
- content: Docker get Containers By App Label
id: docker-get-containers-by-app-label
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"get","path":"/docker.getContainers"},{"method":"post","path":"/docker.restartContainer"},{"method":"get","path":"/docker.getConfig"},{"method":"get","path":"/docker.getContainersByAppNameMatch"},{"method":"get","path":"/docker.getContainersByAppLabel"}]} hasHead={true} />

View File

@@ -0,0 +1,46 @@
---
title: Domain
full: true
_openapi:
toc:
- depth: 2
title: Domain create
url: '#domain-create'
- depth: 2
title: Domain by Application Id
url: '#domain-by-application-id'
- depth: 2
title: Domain by Compose Id
url: '#domain-by-compose-id'
- depth: 2
title: Domain generate Domain
url: '#domain-generate-domain'
- depth: 2
title: Domain update
url: '#domain-update'
- depth: 2
title: Domain one
url: '#domain-one'
- depth: 2
title: Domain delete
url: '#domain-delete'
structuredData:
headings:
- content: Domain create
id: domain-create
- content: Domain by Application Id
id: domain-by-application-id
- content: Domain by Compose Id
id: domain-by-compose-id
- content: Domain generate Domain
id: domain-generate-domain
- content: Domain update
id: domain-update
- content: Domain one
id: domain-one
- content: Domain delete
id: domain-delete
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/domain.create"},{"method":"get","path":"/domain.byApplicationId"},{"method":"get","path":"/domain.byComposeId"},{"method":"post","path":"/domain.generateDomain"},{"method":"post","path":"/domain.update"},{"method":"get","path":"/domain.one"},{"method":"post","path":"/domain.delete"}]} hasHead={true} />

View File

@@ -0,0 +1,21 @@
---
title: Git Provider
full: true
_openapi:
toc:
- depth: 2
title: Git Provider get All
url: '#git-provider-get-all'
- depth: 2
title: Git Provider remove
url: '#git-provider-remove'
structuredData:
headings:
- content: Git Provider get All
id: git-provider-get-all
- content: Git Provider remove
id: git-provider-remove
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"get","path":"/gitProvider.getAll"},{"method":"post","path":"/gitProvider.remove"}]} hasHead={true} />

View File

@@ -0,0 +1,41 @@
---
title: Github
full: true
_openapi:
toc:
- depth: 2
title: Github one
url: '#github-one'
- depth: 2
title: Github get Github Repositories
url: '#github-get-github-repositories'
- depth: 2
title: Github get Github Branches
url: '#github-get-github-branches'
- depth: 2
title: Github github Providers
url: '#github-github-providers'
- depth: 2
title: Github test Connection
url: '#github-test-connection'
- depth: 2
title: Github update
url: '#github-update'
structuredData:
headings:
- content: Github one
id: github-one
- content: Github get Github Repositories
id: github-get-github-repositories
- content: Github get Github Branches
id: github-get-github-branches
- content: Github github Providers
id: github-github-providers
- content: Github test Connection
id: github-test-connection
- content: Github update
id: github-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"get","path":"/github.one"},{"method":"get","path":"/github.getGithubRepositories"},{"method":"get","path":"/github.getGithubBranches"},{"method":"get","path":"/github.githubProviders"},{"method":"post","path":"/github.testConnection"},{"method":"post","path":"/github.update"}]} hasHead={true} />

View File

@@ -0,0 +1,46 @@
---
title: Gitlab
full: true
_openapi:
toc:
- depth: 2
title: Gitlab create
url: '#gitlab-create'
- depth: 2
title: Gitlab one
url: '#gitlab-one'
- depth: 2
title: Gitlab gitlab Providers
url: '#gitlab-gitlab-providers'
- depth: 2
title: Gitlab get Gitlab Repositories
url: '#gitlab-get-gitlab-repositories'
- depth: 2
title: Gitlab get Gitlab Branches
url: '#gitlab-get-gitlab-branches'
- depth: 2
title: Gitlab test Connection
url: '#gitlab-test-connection'
- depth: 2
title: Gitlab update
url: '#gitlab-update'
structuredData:
headings:
- content: Gitlab create
id: gitlab-create
- content: Gitlab one
id: gitlab-one
- content: Gitlab gitlab Providers
id: gitlab-gitlab-providers
- content: Gitlab get Gitlab Repositories
id: gitlab-get-gitlab-repositories
- content: Gitlab get Gitlab Branches
id: gitlab-get-gitlab-branches
- content: Gitlab test Connection
id: gitlab-test-connection
- content: Gitlab update
id: gitlab-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/gitlab.create"},{"method":"get","path":"/gitlab.one"},{"method":"get","path":"/gitlab.gitlabProviders"},{"method":"get","path":"/gitlab.getGitlabRepositories"},{"method":"get","path":"/gitlab.getGitlabBranches"},{"method":"post","path":"/gitlab.testConnection"},{"method":"post","path":"/gitlab.update"}]} hasHead={true} />

View File

@@ -0,0 +1,66 @@
---
title: Mariadb
full: true
_openapi:
toc:
- depth: 2
title: Mariadb create
url: '#mariadb-create'
- depth: 2
title: Mariadb one
url: '#mariadb-one'
- depth: 2
title: Mariadb start
url: '#mariadb-start'
- depth: 2
title: Mariadb stop
url: '#mariadb-stop'
- depth: 2
title: Mariadb save External Port
url: '#mariadb-save-external-port'
- depth: 2
title: Mariadb deploy
url: '#mariadb-deploy'
- depth: 2
title: Mariadb change Status
url: '#mariadb-change-status'
- depth: 2
title: Mariadb remove
url: '#mariadb-remove'
- depth: 2
title: Mariadb save Environment
url: '#mariadb-save-environment'
- depth: 2
title: Mariadb reload
url: '#mariadb-reload'
- depth: 2
title: Mariadb update
url: '#mariadb-update'
structuredData:
headings:
- content: Mariadb create
id: mariadb-create
- content: Mariadb one
id: mariadb-one
- content: Mariadb start
id: mariadb-start
- content: Mariadb stop
id: mariadb-stop
- content: Mariadb save External Port
id: mariadb-save-external-port
- content: Mariadb deploy
id: mariadb-deploy
- content: Mariadb change Status
id: mariadb-change-status
- content: Mariadb remove
id: mariadb-remove
- content: Mariadb save Environment
id: mariadb-save-environment
- content: Mariadb reload
id: mariadb-reload
- content: Mariadb update
id: mariadb-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/mariadb.create"},{"method":"get","path":"/mariadb.one"},{"method":"post","path":"/mariadb.start"},{"method":"post","path":"/mariadb.stop"},{"method":"post","path":"/mariadb.saveExternalPort"},{"method":"post","path":"/mariadb.deploy"},{"method":"post","path":"/mariadb.changeStatus"},{"method":"post","path":"/mariadb.remove"},{"method":"post","path":"/mariadb.saveEnvironment"},{"method":"post","path":"/mariadb.reload"},{"method":"post","path":"/mariadb.update"}]} hasHead={true} />

View File

@@ -0,0 +1,66 @@
---
title: Mongo
full: true
_openapi:
toc:
- depth: 2
title: Mongo create
url: '#mongo-create'
- depth: 2
title: Mongo one
url: '#mongo-one'
- depth: 2
title: Mongo start
url: '#mongo-start'
- depth: 2
title: Mongo stop
url: '#mongo-stop'
- depth: 2
title: Mongo save External Port
url: '#mongo-save-external-port'
- depth: 2
title: Mongo deploy
url: '#mongo-deploy'
- depth: 2
title: Mongo change Status
url: '#mongo-change-status'
- depth: 2
title: Mongo reload
url: '#mongo-reload'
- depth: 2
title: Mongo remove
url: '#mongo-remove'
- depth: 2
title: Mongo save Environment
url: '#mongo-save-environment'
- depth: 2
title: Mongo update
url: '#mongo-update'
structuredData:
headings:
- content: Mongo create
id: mongo-create
- content: Mongo one
id: mongo-one
- content: Mongo start
id: mongo-start
- content: Mongo stop
id: mongo-stop
- content: Mongo save External Port
id: mongo-save-external-port
- content: Mongo deploy
id: mongo-deploy
- content: Mongo change Status
id: mongo-change-status
- content: Mongo reload
id: mongo-reload
- content: Mongo remove
id: mongo-remove
- content: Mongo save Environment
id: mongo-save-environment
- content: Mongo update
id: mongo-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/mongo.create"},{"method":"get","path":"/mongo.one"},{"method":"post","path":"/mongo.start"},{"method":"post","path":"/mongo.stop"},{"method":"post","path":"/mongo.saveExternalPort"},{"method":"post","path":"/mongo.deploy"},{"method":"post","path":"/mongo.changeStatus"},{"method":"post","path":"/mongo.reload"},{"method":"post","path":"/mongo.remove"},{"method":"post","path":"/mongo.saveEnvironment"},{"method":"post","path":"/mongo.update"}]} hasHead={true} />

View File

@@ -0,0 +1,31 @@
---
title: Mounts
full: true
_openapi:
toc:
- depth: 2
title: Mounts create
url: '#mounts-create'
- depth: 2
title: Mounts remove
url: '#mounts-remove'
- depth: 2
title: Mounts one
url: '#mounts-one'
- depth: 2
title: Mounts update
url: '#mounts-update'
structuredData:
headings:
- content: Mounts create
id: mounts-create
- content: Mounts remove
id: mounts-remove
- content: Mounts one
id: mounts-one
- content: Mounts update
id: mounts-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/mounts.create"},{"method":"post","path":"/mounts.remove"},{"method":"get","path":"/mounts.one"},{"method":"post","path":"/mounts.update"}]} hasHead={true} />

View File

@@ -0,0 +1,66 @@
---
title: Mysql
full: true
_openapi:
toc:
- depth: 2
title: Mysql create
url: '#mysql-create'
- depth: 2
title: Mysql one
url: '#mysql-one'
- depth: 2
title: Mysql start
url: '#mysql-start'
- depth: 2
title: Mysql stop
url: '#mysql-stop'
- depth: 2
title: Mysql save External Port
url: '#mysql-save-external-port'
- depth: 2
title: Mysql deploy
url: '#mysql-deploy'
- depth: 2
title: Mysql change Status
url: '#mysql-change-status'
- depth: 2
title: Mysql reload
url: '#mysql-reload'
- depth: 2
title: Mysql remove
url: '#mysql-remove'
- depth: 2
title: Mysql save Environment
url: '#mysql-save-environment'
- depth: 2
title: Mysql update
url: '#mysql-update'
structuredData:
headings:
- content: Mysql create
id: mysql-create
- content: Mysql one
id: mysql-one
- content: Mysql start
id: mysql-start
- content: Mysql stop
id: mysql-stop
- content: Mysql save External Port
id: mysql-save-external-port
- content: Mysql deploy
id: mysql-deploy
- content: Mysql change Status
id: mysql-change-status
- content: Mysql reload
id: mysql-reload
- content: Mysql remove
id: mysql-remove
- content: Mysql save Environment
id: mysql-save-environment
- content: Mysql update
id: mysql-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/mysql.create"},{"method":"get","path":"/mysql.one"},{"method":"post","path":"/mysql.start"},{"method":"post","path":"/mysql.stop"},{"method":"post","path":"/mysql.saveExternalPort"},{"method":"post","path":"/mysql.deploy"},{"method":"post","path":"/mysql.changeStatus"},{"method":"post","path":"/mysql.reload"},{"method":"post","path":"/mysql.remove"},{"method":"post","path":"/mysql.saveEnvironment"},{"method":"post","path":"/mysql.update"}]} hasHead={true} />

View File

@@ -0,0 +1,86 @@
---
title: Notification
full: true
_openapi:
toc:
- depth: 2
title: Notification create Slack
url: '#notification-create-slack'
- depth: 2
title: Notification update Slack
url: '#notification-update-slack'
- depth: 2
title: Notification test Slack Connection
url: '#notification-test-slack-connection'
- depth: 2
title: Notification create Telegram
url: '#notification-create-telegram'
- depth: 2
title: Notification update Telegram
url: '#notification-update-telegram'
- depth: 2
title: Notification test Telegram Connection
url: '#notification-test-telegram-connection'
- depth: 2
title: Notification create Discord
url: '#notification-create-discord'
- depth: 2
title: Notification update Discord
url: '#notification-update-discord'
- depth: 2
title: Notification test Discord Connection
url: '#notification-test-discord-connection'
- depth: 2
title: Notification create Email
url: '#notification-create-email'
- depth: 2
title: Notification update Email
url: '#notification-update-email'
- depth: 2
title: Notification test Email Connection
url: '#notification-test-email-connection'
- depth: 2
title: Notification remove
url: '#notification-remove'
- depth: 2
title: Notification one
url: '#notification-one'
- depth: 2
title: Notification all
url: '#notification-all'
structuredData:
headings:
- content: Notification create Slack
id: notification-create-slack
- content: Notification update Slack
id: notification-update-slack
- content: Notification test Slack Connection
id: notification-test-slack-connection
- content: Notification create Telegram
id: notification-create-telegram
- content: Notification update Telegram
id: notification-update-telegram
- content: Notification test Telegram Connection
id: notification-test-telegram-connection
- content: Notification create Discord
id: notification-create-discord
- content: Notification update Discord
id: notification-update-discord
- content: Notification test Discord Connection
id: notification-test-discord-connection
- content: Notification create Email
id: notification-create-email
- content: Notification update Email
id: notification-update-email
- content: Notification test Email Connection
id: notification-test-email-connection
- content: Notification remove
id: notification-remove
- content: Notification one
id: notification-one
- content: Notification all
id: notification-all
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/notification.createSlack"},{"method":"post","path":"/notification.updateSlack"},{"method":"post","path":"/notification.testSlackConnection"},{"method":"post","path":"/notification.createTelegram"},{"method":"post","path":"/notification.updateTelegram"},{"method":"post","path":"/notification.testTelegramConnection"},{"method":"post","path":"/notification.createDiscord"},{"method":"post","path":"/notification.updateDiscord"},{"method":"post","path":"/notification.testDiscordConnection"},{"method":"post","path":"/notification.createEmail"},{"method":"post","path":"/notification.updateEmail"},{"method":"post","path":"/notification.testEmailConnection"},{"method":"post","path":"/notification.remove"},{"method":"get","path":"/notification.one"},{"method":"get","path":"/notification.all"}]} hasHead={true} />

View File

@@ -0,0 +1,31 @@
---
title: Port
full: true
_openapi:
toc:
- depth: 2
title: Port create
url: '#port-create'
- depth: 2
title: Port one
url: '#port-one'
- depth: 2
title: Port delete
url: '#port-delete'
- depth: 2
title: Port update
url: '#port-update'
structuredData:
headings:
- content: Port create
id: port-create
- content: Port one
id: port-one
- content: Port delete
id: port-delete
- content: Port update
id: port-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/port.create"},{"method":"get","path":"/port.one"},{"method":"post","path":"/port.delete"},{"method":"post","path":"/port.update"}]} hasHead={true} />

View File

@@ -0,0 +1,66 @@
---
title: Postgres
full: true
_openapi:
toc:
- depth: 2
title: Postgres create
url: '#postgres-create'
- depth: 2
title: Postgres one
url: '#postgres-one'
- depth: 2
title: Postgres start
url: '#postgres-start'
- depth: 2
title: Postgres stop
url: '#postgres-stop'
- depth: 2
title: Postgres save External Port
url: '#postgres-save-external-port'
- depth: 2
title: Postgres deploy
url: '#postgres-deploy'
- depth: 2
title: Postgres change Status
url: '#postgres-change-status'
- depth: 2
title: Postgres remove
url: '#postgres-remove'
- depth: 2
title: Postgres save Environment
url: '#postgres-save-environment'
- depth: 2
title: Postgres reload
url: '#postgres-reload'
- depth: 2
title: Postgres update
url: '#postgres-update'
structuredData:
headings:
- content: Postgres create
id: postgres-create
- content: Postgres one
id: postgres-one
- content: Postgres start
id: postgres-start
- content: Postgres stop
id: postgres-stop
- content: Postgres save External Port
id: postgres-save-external-port
- content: Postgres deploy
id: postgres-deploy
- content: Postgres change Status
id: postgres-change-status
- content: Postgres remove
id: postgres-remove
- content: Postgres save Environment
id: postgres-save-environment
- content: Postgres reload
id: postgres-reload
- content: Postgres update
id: postgres-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/postgres.create"},{"method":"get","path":"/postgres.one"},{"method":"post","path":"/postgres.start"},{"method":"post","path":"/postgres.stop"},{"method":"post","path":"/postgres.saveExternalPort"},{"method":"post","path":"/postgres.deploy"},{"method":"post","path":"/postgres.changeStatus"},{"method":"post","path":"/postgres.remove"},{"method":"post","path":"/postgres.saveEnvironment"},{"method":"post","path":"/postgres.reload"},{"method":"post","path":"/postgres.update"}]} hasHead={true} />

View File

@@ -0,0 +1,36 @@
---
title: Project
full: true
_openapi:
toc:
- depth: 2
title: Project create
url: '#project-create'
- depth: 2
title: Project one
url: '#project-one'
- depth: 2
title: Project all
url: '#project-all'
- depth: 2
title: Project remove
url: '#project-remove'
- depth: 2
title: Project update
url: '#project-update'
structuredData:
headings:
- content: Project create
id: project-create
- content: Project one
id: project-one
- content: Project all
id: project-all
- content: Project remove
id: project-remove
- content: Project update
id: project-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/project.create"},{"method":"get","path":"/project.one"},{"method":"get","path":"/project.all"},{"method":"post","path":"/project.remove"},{"method":"post","path":"/project.update"}]} hasHead={true} />

View File

@@ -0,0 +1,31 @@
---
title: Redirects
full: true
_openapi:
toc:
- depth: 2
title: Redirects create
url: '#redirects-create'
- depth: 2
title: Redirects one
url: '#redirects-one'
- depth: 2
title: Redirects delete
url: '#redirects-delete'
- depth: 2
title: Redirects update
url: '#redirects-update'
structuredData:
headings:
- content: Redirects create
id: redirects-create
- content: Redirects one
id: redirects-one
- content: Redirects delete
id: redirects-delete
- content: Redirects update
id: redirects-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/redirects.create"},{"method":"get","path":"/redirects.one"},{"method":"post","path":"/redirects.delete"},{"method":"post","path":"/redirects.update"}]} hasHead={true} />

View File

@@ -0,0 +1,66 @@
---
title: Redis
full: true
_openapi:
toc:
- depth: 2
title: Redis create
url: '#redis-create'
- depth: 2
title: Redis one
url: '#redis-one'
- depth: 2
title: Redis start
url: '#redis-start'
- depth: 2
title: Redis reload
url: '#redis-reload'
- depth: 2
title: Redis stop
url: '#redis-stop'
- depth: 2
title: Redis save External Port
url: '#redis-save-external-port'
- depth: 2
title: Redis deploy
url: '#redis-deploy'
- depth: 2
title: Redis change Status
url: '#redis-change-status'
- depth: 2
title: Redis remove
url: '#redis-remove'
- depth: 2
title: Redis save Environment
url: '#redis-save-environment'
- depth: 2
title: Redis update
url: '#redis-update'
structuredData:
headings:
- content: Redis create
id: redis-create
- content: Redis one
id: redis-one
- content: Redis start
id: redis-start
- content: Redis reload
id: redis-reload
- content: Redis stop
id: redis-stop
- content: Redis save External Port
id: redis-save-external-port
- content: Redis deploy
id: redis-deploy
- content: Redis change Status
id: redis-change-status
- content: Redis remove
id: redis-remove
- content: Redis save Environment
id: redis-save-environment
- content: Redis update
id: redis-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/redis.create"},{"method":"get","path":"/redis.one"},{"method":"post","path":"/redis.start"},{"method":"post","path":"/redis.reload"},{"method":"post","path":"/redis.stop"},{"method":"post","path":"/redis.saveExternalPort"},{"method":"post","path":"/redis.deploy"},{"method":"post","path":"/redis.changeStatus"},{"method":"post","path":"/redis.remove"},{"method":"post","path":"/redis.saveEnvironment"},{"method":"post","path":"/redis.update"}]} hasHead={true} />

View File

@@ -0,0 +1,41 @@
---
title: Registry
full: true
_openapi:
toc:
- depth: 2
title: Registry create
url: '#registry-create'
- depth: 2
title: Registry remove
url: '#registry-remove'
- depth: 2
title: Registry update
url: '#registry-update'
- depth: 2
title: Registry all
url: '#registry-all'
- depth: 2
title: Registry one
url: '#registry-one'
- depth: 2
title: Registry test Registry
url: '#registry-test-registry'
structuredData:
headings:
- content: Registry create
id: registry-create
- content: Registry remove
id: registry-remove
- content: Registry update
id: registry-update
- content: Registry all
id: registry-all
- content: Registry one
id: registry-one
- content: Registry test Registry
id: registry-test-registry
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/registry.create"},{"method":"post","path":"/registry.remove"},{"method":"post","path":"/registry.update"},{"method":"get","path":"/registry.all"},{"method":"get","path":"/registry.one"},{"method":"post","path":"/registry.testRegistry"}]} hasHead={true} />

View File

@@ -0,0 +1,31 @@
---
title: Security
full: true
_openapi:
toc:
- depth: 2
title: Security create
url: '#security-create'
- depth: 2
title: Security one
url: '#security-one'
- depth: 2
title: Security delete
url: '#security-delete'
- depth: 2
title: Security update
url: '#security-update'
structuredData:
headings:
- content: Security create
id: security-create
- content: Security one
id: security-one
- content: Security delete
id: security-delete
- content: Security update
id: security-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/security.create"},{"method":"get","path":"/security.one"},{"method":"post","path":"/security.delete"},{"method":"post","path":"/security.update"}]} hasHead={true} />

View File

@@ -0,0 +1,46 @@
---
title: Server
full: true
_openapi:
toc:
- depth: 2
title: Server create
url: '#server-create'
- depth: 2
title: Server one
url: '#server-one'
- depth: 2
title: Server all
url: '#server-all'
- depth: 2
title: Server with S S H Key
url: '#server-with-s-s-h-key'
- depth: 2
title: Server setup
url: '#server-setup'
- depth: 2
title: Server remove
url: '#server-remove'
- depth: 2
title: Server update
url: '#server-update'
structuredData:
headings:
- content: Server create
id: server-create
- content: Server one
id: server-one
- content: Server all
id: server-all
- content: Server with S S H Key
id: server-with-s-s-h-key
- content: Server setup
id: server-setup
- content: Server remove
id: server-remove
- content: Server update
id: server-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/server.create"},{"method":"get","path":"/server.one"},{"method":"get","path":"/server.all"},{"method":"get","path":"/server.withSSHKey"},{"method":"post","path":"/server.setup"},{"method":"post","path":"/server.remove"},{"method":"post","path":"/server.update"}]} hasHead={true} />

View File

@@ -0,0 +1,201 @@
---
title: Settings
full: true
_openapi:
toc:
- depth: 2
title: Settings reload Server
url: '#settings-reload-server'
- depth: 2
title: Settings reload Traefik
url: '#settings-reload-traefik'
- depth: 2
title: Settings toggle Dashboard
url: '#settings-toggle-dashboard'
- depth: 2
title: Settings clean Unused Images
url: '#settings-clean-unused-images'
- depth: 2
title: Settings clean Unused Volumes
url: '#settings-clean-unused-volumes'
- depth: 2
title: Settings clean Stopped Containers
url: '#settings-clean-stopped-containers'
- depth: 2
title: Settings clean Docker Builder
url: '#settings-clean-docker-builder'
- depth: 2
title: Settings clean Docker Prune
url: '#settings-clean-docker-prune'
- depth: 2
title: Settings clean All
url: '#settings-clean-all'
- depth: 2
title: Settings clean Monitoring
url: '#settings-clean-monitoring'
- depth: 2
title: Settings save S S H Private Key
url: '#settings-save-s-s-h-private-key'
- depth: 2
title: Settings assign Domain Server
url: '#settings-assign-domain-server'
- depth: 2
title: Settings clean S S H Private Key
url: '#settings-clean-s-s-h-private-key'
- depth: 2
title: Settings update Docker Cleanup
url: '#settings-update-docker-cleanup'
- depth: 2
title: Settings read Traefik Config
url: '#settings-read-traefik-config'
- depth: 2
title: Settings update Traefik Config
url: '#settings-update-traefik-config'
- depth: 2
title: Settings read Web Server Traefik Config
url: '#settings-read-web-server-traefik-config'
- depth: 2
title: Settings update Web Server Traefik Config
url: '#settings-update-web-server-traefik-config'
- depth: 2
title: Settings read Middleware Traefik Config
url: '#settings-read-middleware-traefik-config'
- depth: 2
title: Settings update Middleware Traefik Config
url: '#settings-update-middleware-traefik-config'
- depth: 2
title: Settings check And Update Image
url: '#settings-check-and-update-image'
- depth: 2
title: Settings update Server
url: '#settings-update-server'
- depth: 2
title: Settings get Dokploy Version
url: '#settings-get-dokploy-version'
- depth: 2
title: Settings read Directories
url: '#settings-read-directories'
- depth: 2
title: Settings update Traefik File
url: '#settings-update-traefik-file'
- depth: 2
title: Settings read Traefik File
url: '#settings-read-traefik-file'
- depth: 2
title: Settings get Ip
url: '#settings-get-ip'
- depth: 2
title: Settings get Open Api Document
url: '#settings-get-open-api-document'
- depth: 2
title: Settings read Traefik Env
url: '#settings-read-traefik-env'
- depth: 2
title: Settings write Traefik Env
url: '#settings-write-traefik-env'
- depth: 2
title: Settings have Traefik Dashboard Port Enabled
url: '#settings-have-traefik-dashboard-port-enabled'
- depth: 2
title: Settings read Stats
url: '#settings-read-stats'
- depth: 2
title: Settings get Log Rotate Status
url: '#settings-get-log-rotate-status'
- depth: 2
title: Settings toggle Log Rotate
url: '#settings-toggle-log-rotate'
- depth: 2
title: Settings have Activate Requests
url: '#settings-have-activate-requests'
- depth: 2
title: Settings toggle Requests
url: '#settings-toggle-requests'
- depth: 2
title: Settings is Cloud
url: '#settings-is-cloud'
- depth: 2
title: Settings health
url: '#settings-health'
structuredData:
headings:
- content: Settings reload Server
id: settings-reload-server
- content: Settings reload Traefik
id: settings-reload-traefik
- content: Settings toggle Dashboard
id: settings-toggle-dashboard
- content: Settings clean Unused Images
id: settings-clean-unused-images
- content: Settings clean Unused Volumes
id: settings-clean-unused-volumes
- content: Settings clean Stopped Containers
id: settings-clean-stopped-containers
- content: Settings clean Docker Builder
id: settings-clean-docker-builder
- content: Settings clean Docker Prune
id: settings-clean-docker-prune
- content: Settings clean All
id: settings-clean-all
- content: Settings clean Monitoring
id: settings-clean-monitoring
- content: Settings save S S H Private Key
id: settings-save-s-s-h-private-key
- content: Settings assign Domain Server
id: settings-assign-domain-server
- content: Settings clean S S H Private Key
id: settings-clean-s-s-h-private-key
- content: Settings update Docker Cleanup
id: settings-update-docker-cleanup
- content: Settings read Traefik Config
id: settings-read-traefik-config
- content: Settings update Traefik Config
id: settings-update-traefik-config
- content: Settings read Web Server Traefik Config
id: settings-read-web-server-traefik-config
- content: Settings update Web Server Traefik Config
id: settings-update-web-server-traefik-config
- content: Settings read Middleware Traefik Config
id: settings-read-middleware-traefik-config
- content: Settings update Middleware Traefik Config
id: settings-update-middleware-traefik-config
- content: Settings check And Update Image
id: settings-check-and-update-image
- content: Settings update Server
id: settings-update-server
- content: Settings get Dokploy Version
id: settings-get-dokploy-version
- content: Settings read Directories
id: settings-read-directories
- content: Settings update Traefik File
id: settings-update-traefik-file
- content: Settings read Traefik File
id: settings-read-traefik-file
- content: Settings get Ip
id: settings-get-ip
- content: Settings get Open Api Document
id: settings-get-open-api-document
- content: Settings read Traefik Env
id: settings-read-traefik-env
- content: Settings write Traefik Env
id: settings-write-traefik-env
- content: Settings have Traefik Dashboard Port Enabled
id: settings-have-traefik-dashboard-port-enabled
- content: Settings read Stats
id: settings-read-stats
- content: Settings get Log Rotate Status
id: settings-get-log-rotate-status
- content: Settings toggle Log Rotate
id: settings-toggle-log-rotate
- content: Settings have Activate Requests
id: settings-have-activate-requests
- content: Settings toggle Requests
id: settings-toggle-requests
- content: Settings is Cloud
id: settings-is-cloud
- content: Settings health
id: settings-health
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/settings.reloadServer"},{"method":"post","path":"/settings.reloadTraefik"},{"method":"post","path":"/settings.toggleDashboard"},{"method":"post","path":"/settings.cleanUnusedImages"},{"method":"post","path":"/settings.cleanUnusedVolumes"},{"method":"post","path":"/settings.cleanStoppedContainers"},{"method":"post","path":"/settings.cleanDockerBuilder"},{"method":"post","path":"/settings.cleanDockerPrune"},{"method":"post","path":"/settings.cleanAll"},{"method":"post","path":"/settings.cleanMonitoring"},{"method":"post","path":"/settings.saveSSHPrivateKey"},{"method":"post","path":"/settings.assignDomainServer"},{"method":"post","path":"/settings.cleanSSHPrivateKey"},{"method":"post","path":"/settings.updateDockerCleanup"},{"method":"get","path":"/settings.readTraefikConfig"},{"method":"post","path":"/settings.updateTraefikConfig"},{"method":"get","path":"/settings.readWebServerTraefikConfig"},{"method":"post","path":"/settings.updateWebServerTraefikConfig"},{"method":"get","path":"/settings.readMiddlewareTraefikConfig"},{"method":"post","path":"/settings.updateMiddlewareTraefikConfig"},{"method":"post","path":"/settings.checkAndUpdateImage"},{"method":"post","path":"/settings.updateServer"},{"method":"get","path":"/settings.getDokployVersion"},{"method":"get","path":"/settings.readDirectories"},{"method":"post","path":"/settings.updateTraefikFile"},{"method":"get","path":"/settings.readTraefikFile"},{"method":"get","path":"/settings.getIp"},{"method":"get","path":"/settings.getOpenApiDocument"},{"method":"get","path":"/settings.readTraefikEnv"},{"method":"post","path":"/settings.writeTraefikEnv"},{"method":"get","path":"/settings.haveTraefikDashboardPortEnabled"},{"method":"get","path":"/settings.readStats"},{"method":"get","path":"/settings.getLogRotateStatus"},{"method":"post","path":"/settings.toggleLogRotate"},{"method":"get","path":"/settings.haveActivateRequests"},{"method":"post","path":"/settings.toggleRequests"},{"method":"get","path":"/settings.isCloud"},{"method":"get","path":"/settings.health"}]} hasHead={true} />

View File

@@ -0,0 +1,41 @@
---
title: Ssh Key
full: true
_openapi:
toc:
- depth: 2
title: Ssh Key create
url: '#ssh-key-create'
- depth: 2
title: Ssh Key remove
url: '#ssh-key-remove'
- depth: 2
title: Ssh Key one
url: '#ssh-key-one'
- depth: 2
title: Ssh Key all
url: '#ssh-key-all'
- depth: 2
title: Ssh Key generate
url: '#ssh-key-generate'
- depth: 2
title: Ssh Key update
url: '#ssh-key-update'
structuredData:
headings:
- content: Ssh Key create
id: ssh-key-create
- content: Ssh Key remove
id: ssh-key-remove
- content: Ssh Key one
id: ssh-key-one
- content: Ssh Key all
id: ssh-key-all
- content: Ssh Key generate
id: ssh-key-generate
- content: Ssh Key update
id: ssh-key-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/sshKey.create"},{"method":"post","path":"/sshKey.remove"},{"method":"get","path":"/sshKey.one"},{"method":"get","path":"/sshKey.all"},{"method":"post","path":"/sshKey.generate"},{"method":"post","path":"/sshKey.update"}]} hasHead={true} />

View File

@@ -0,0 +1,31 @@
---
title: Stripe
full: true
_openapi:
toc:
- depth: 2
title: Stripe get Products
url: '#stripe-get-products'
- depth: 2
title: Stripe create Checkout Session
url: '#stripe-create-checkout-session'
- depth: 2
title: Stripe create Customer Portal Session
url: '#stripe-create-customer-portal-session'
- depth: 2
title: Stripe can Create More Servers
url: '#stripe-can-create-more-servers'
structuredData:
headings:
- content: Stripe get Products
id: stripe-get-products
- content: Stripe create Checkout Session
id: stripe-create-checkout-session
- content: Stripe create Customer Portal Session
id: stripe-create-customer-portal-session
- content: Stripe can Create More Servers
id: stripe-can-create-more-servers
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"get","path":"/stripe.getProducts"},{"method":"post","path":"/stripe.createCheckoutSession"},{"method":"post","path":"/stripe.createCustomerPortalSession"},{"method":"get","path":"/stripe.canCreateMoreServers"}]} hasHead={true} />

View File

@@ -0,0 +1,26 @@
---
title: User
full: true
_openapi:
toc:
- depth: 2
title: User all
url: '#user-all'
- depth: 2
title: User by Auth Id
url: '#user-by-auth-id'
- depth: 2
title: User by User Id
url: '#user-by-user-id'
structuredData:
headings:
- content: User all
id: user-all
- content: User by Auth Id
id: user-by-auth-id
- content: User by User Id
id: user-by-user-id
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"get","path":"/user.all"},{"method":"get","path":"/user.byAuthId"},{"method":"get","path":"/user.byUserId"}]} hasHead={true} />

View File

@@ -0,0 +1,99 @@
---
title: Dokploy API
description: How to interact with the dokploy API for administrators and users
---
In some cases, you may need to interact directly with the dokploy API. Here's how both administrators and users can do this.
## For Administrators
1. Access the Swagger UI by navigating to `your-vps-ip:3000/swagger`.
2. Use the Swagger interface to interact with the API.
3. By default, access to the Swagger UI is restricted, and only authenticated administrators can access the API.
## For Users
1. By default, users do not have direct access to the API.
2. Administrators can grant users access to:
- Generate access tokens
- Access the Swagger UI
3. If you need access, contact your administrator.
Note: The API provides advanced functionalities. Make sure you understand the operations you're performing to avoid unintended changes to the system.
## Usage
By default the OpenApi base url is `http://localhost:3000/api`, you need to replace with the ip of your dokploy instance or the domain name.
### Authentication
The API uses JWT tokens for authentication. You can generate a token by going to the `/settings/profile` page and go to API/CLI Section and generate the token.
Let's take a example of authenticated request:
```bash
curl -X 'GET' \
'https://dokploy.com/api/project.all' \
-H 'accept: application/json'
-H 'Authorization: Bearer YOUR-TOKEN'
```
then you will get the something like this:
```json
[
{
"projectId": "klZKsyw5g-QT_jrWJ5T-w",
"name": "Random",
"description": "",
"createdAt": "2024-06-19T15:05:58.785Z",
"adminId": "_WrKZbs7iJAA3p4N2Yfyu",
"applications": [],
"mariadb": [],
"mongo": [],
"mysql": [
{
"mysqlId": "N3cudwO46TiDXzBm4SaQ1",
"name": "mysql",
"appName": "random-mysql-924715",
"description": "",
"databaseName": "mysql",
"databaseUser": "mysql",
"databasePassword": "h13BzO6y3KYSHaQg",
"databaseRootPassword": "mM1b7JeoPA7jArxj",
"dockerImage": "mysql:8",
"command": null,
"env": null,
"memoryReservation": null,
"memoryLimit": null,
"cpuReservation": null,
"cpuLimit": null,
"externalPort": null,
"applicationStatus": "done",
"createdAt": "2024-06-24T01:55:40.378Z",
"projectId": "klZKsyw5g-QT_jrWJ5T-w"
}
],
"postgres": [],
"redis": [
{
"redisId": "TtFK5S4QFaIjaNGOb8Ku-",
"name": "redis",
"appName": "random-redis-7eec62",
"description": "",
"databasePassword": "Yvb8gqClfomjcue8",
"dockerImage": "redis:7",
"command": null,
"env": null,
"memoryReservation": null,
"memoryLimit": null,
"cpuReservation": null,
"cpuLimit": null,
"externalPort": 6379,
"createdAt": "2024-06-26T06:43:20.570Z",
"applicationStatus": "done",
"projectId": "klZKsyw5g-QT_jrWJ5T-w"
}
],
"compose": []
},
]
```

View File

@@ -0,0 +1,7 @@
{
"title": "API",
"description": "API Documentation",
"icon": "Building2",
"root": true,
"pages": ["---Get Started---", "index", "---API---", "...", "---Reference---"]
}

View File

@@ -0,0 +1,36 @@
---
title: Admin
full: true
_openapi:
toc:
- depth: 2
title: Admin one
url: '#admin-one'
- depth: 2
title: Admin create User Invitation
url: '#admin-create-user-invitation'
- depth: 2
title: Admin remove User
url: '#admin-remove-user'
- depth: 2
title: Admin get User By Token
url: '#admin-get-user-by-token'
- depth: 2
title: Admin assign Permissions
url: '#admin-assign-permissions'
structuredData:
headings:
- content: Admin one
id: admin-one
- content: Admin create User Invitation
id: admin-create-user-invitation
- content: Admin remove User
id: admin-remove-user
- content: Admin get User By Token
id: admin-get-user-by-token
- content: Admin assign Permissions
id: admin-assign-permissions
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"get","path":"/admin.one"},{"method":"post","path":"/admin.createUserInvitation"},{"method":"post","path":"/admin.removeUser"},{"method":"get","path":"/admin.getUserByToken"},{"method":"post","path":"/admin.assignPermissions"}]} hasHead={true} />

View File

@@ -0,0 +1,121 @@
---
title: Application
full: true
_openapi:
toc:
- depth: 2
title: Application create
url: '#application-create'
- depth: 2
title: Application one
url: '#application-one'
- depth: 2
title: Application reload
url: '#application-reload'
- depth: 2
title: Application delete
url: '#application-delete'
- depth: 2
title: Application stop
url: '#application-stop'
- depth: 2
title: Application start
url: '#application-start'
- depth: 2
title: Application redeploy
url: '#application-redeploy'
- depth: 2
title: Application save Environment
url: '#application-save-environment'
- depth: 2
title: Application save Build Type
url: '#application-save-build-type'
- depth: 2
title: Application save Github Provider
url: '#application-save-github-provider'
- depth: 2
title: Application save Gitlab Provider
url: '#application-save-gitlab-provider'
- depth: 2
title: Application save Bitbucket Provider
url: '#application-save-bitbucket-provider'
- depth: 2
title: Application save Docker Provider
url: '#application-save-docker-provider'
- depth: 2
title: Application save Git Prodiver
url: '#application-save-git-prodiver'
- depth: 2
title: Application mark Running
url: '#application-mark-running'
- depth: 2
title: Application update
url: '#application-update'
- depth: 2
title: Application refresh Token
url: '#application-refresh-token'
- depth: 2
title: Application deploy
url: '#application-deploy'
- depth: 2
title: Application clean Queues
url: '#application-clean-queues'
- depth: 2
title: Application read Traefik Config
url: '#application-read-traefik-config'
- depth: 2
title: Application update Traefik Config
url: '#application-update-traefik-config'
- depth: 2
title: Application read App Monitoring
url: '#application-read-app-monitoring'
structuredData:
headings:
- content: Application create
id: application-create
- content: Application one
id: application-one
- content: Application reload
id: application-reload
- content: Application delete
id: application-delete
- content: Application stop
id: application-stop
- content: Application start
id: application-start
- content: Application redeploy
id: application-redeploy
- content: Application save Environment
id: application-save-environment
- content: Application save Build Type
id: application-save-build-type
- content: Application save Github Provider
id: application-save-github-provider
- content: Application save Gitlab Provider
id: application-save-gitlab-provider
- content: Application save Bitbucket Provider
id: application-save-bitbucket-provider
- content: Application save Docker Provider
id: application-save-docker-provider
- content: Application save Git Prodiver
id: application-save-git-prodiver
- content: Application mark Running
id: application-mark-running
- content: Application update
id: application-update
- content: Application refresh Token
id: application-refresh-token
- content: Application deploy
id: application-deploy
- content: Application clean Queues
id: application-clean-queues
- content: Application read Traefik Config
id: application-read-traefik-config
- content: Application update Traefik Config
id: application-update-traefik-config
- content: Application read App Monitoring
id: application-read-app-monitoring
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/application.create"},{"method":"get","path":"/application.one"},{"method":"post","path":"/application.reload"},{"method":"post","path":"/application.delete"},{"method":"post","path":"/application.stop"},{"method":"post","path":"/application.start"},{"method":"post","path":"/application.redeploy"},{"method":"post","path":"/application.saveEnvironment"},{"method":"post","path":"/application.saveBuildType"},{"method":"post","path":"/application.saveGithubProvider"},{"method":"post","path":"/application.saveGitlabProvider"},{"method":"post","path":"/application.saveBitbucketProvider"},{"method":"post","path":"/application.saveDockerProvider"},{"method":"post","path":"/application.saveGitProdiver"},{"method":"post","path":"/application.markRunning"},{"method":"post","path":"/application.update"},{"method":"post","path":"/application.refreshToken"},{"method":"post","path":"/application.deploy"},{"method":"post","path":"/application.cleanQueues"},{"method":"get","path":"/application.readTraefikConfig"},{"method":"post","path":"/application.updateTraefikConfig"},{"method":"get","path":"/application.readAppMonitoring"}]} hasHead={true} />

View File

@@ -0,0 +1,86 @@
---
title: Auth
full: true
_openapi:
toc:
- depth: 2
title: Auth create Admin
url: '#auth-create-admin'
- depth: 2
title: Auth create User
url: '#auth-create-user'
- depth: 2
title: Auth login
url: '#auth-login'
- depth: 2
title: Auth get
url: '#auth-get'
- depth: 2
title: Auth logout
url: '#auth-logout'
- depth: 2
title: Auth update
url: '#auth-update'
- depth: 2
title: Auth generate Token
url: '#auth-generate-token'
- depth: 2
title: Auth one
url: '#auth-one'
- depth: 2
title: Auth generate2 F A Secret
url: '#auth-generate2-f-a-secret'
- depth: 2
title: Auth verify2 F A Setup
url: '#auth-verify2-f-a-setup'
- depth: 2
title: Auth verify Login2 F A
url: '#auth-verify-login2-f-a'
- depth: 2
title: Auth disable2 F A
url: '#auth-disable2-f-a'
- depth: 2
title: Auth send Reset Password Email
url: '#auth-send-reset-password-email'
- depth: 2
title: Auth reset Password
url: '#auth-reset-password'
- depth: 2
title: Auth confirm Email
url: '#auth-confirm-email'
structuredData:
headings:
- content: Auth create Admin
id: auth-create-admin
- content: Auth create User
id: auth-create-user
- content: Auth login
id: auth-login
- content: Auth get
id: auth-get
- content: Auth logout
id: auth-logout
- content: Auth update
id: auth-update
- content: Auth generate Token
id: auth-generate-token
- content: Auth one
id: auth-one
- content: Auth generate2 F A Secret
id: auth-generate2-f-a-secret
- content: Auth verify2 F A Setup
id: auth-verify2-f-a-setup
- content: Auth verify Login2 F A
id: auth-verify-login2-f-a
- content: Auth disable2 F A
id: auth-disable2-f-a
- content: Auth send Reset Password Email
id: auth-send-reset-password-email
- content: Auth reset Password
id: auth-reset-password
- content: Auth confirm Email
id: auth-confirm-email
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/auth.createAdmin"},{"method":"post","path":"/auth.createUser"},{"method":"post","path":"/auth.login"},{"method":"get","path":"/auth.get"},{"method":"post","path":"/auth.logout"},{"method":"post","path":"/auth.update"},{"method":"post","path":"/auth.generateToken"},{"method":"get","path":"/auth.one"},{"method":"get","path":"/auth.generate2FASecret"},{"method":"post","path":"/auth.verify2FASetup"},{"method":"post","path":"/auth.verifyLogin2FA"},{"method":"post","path":"/auth.disable2FA"},{"method":"post","path":"/auth.sendResetPasswordEmail"},{"method":"post","path":"/auth.resetPassword"},{"method":"post","path":"/auth.confirmEmail"}]} hasHead={true} />

View File

@@ -0,0 +1,51 @@
---
title: Backup
full: true
_openapi:
toc:
- depth: 2
title: Backup create
url: '#backup-create'
- depth: 2
title: Backup one
url: '#backup-one'
- depth: 2
title: Backup update
url: '#backup-update'
- depth: 2
title: Backup remove
url: '#backup-remove'
- depth: 2
title: Backup manual Backup Postgres
url: '#backup-manual-backup-postgres'
- depth: 2
title: Backup manual Backup My Sql
url: '#backup-manual-backup-my-sql'
- depth: 2
title: Backup manual Backup Mariadb
url: '#backup-manual-backup-mariadb'
- depth: 2
title: Backup manual Backup Mongo
url: '#backup-manual-backup-mongo'
structuredData:
headings:
- content: Backup create
id: backup-create
- content: Backup one
id: backup-one
- content: Backup update
id: backup-update
- content: Backup remove
id: backup-remove
- content: Backup manual Backup Postgres
id: backup-manual-backup-postgres
- content: Backup manual Backup My Sql
id: backup-manual-backup-my-sql
- content: Backup manual Backup Mariadb
id: backup-manual-backup-mariadb
- content: Backup manual Backup Mongo
id: backup-manual-backup-mongo
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/backup.create"},{"method":"get","path":"/backup.one"},{"method":"post","path":"/backup.update"},{"method":"post","path":"/backup.remove"},{"method":"post","path":"/backup.manualBackupPostgres"},{"method":"post","path":"/backup.manualBackupMySql"},{"method":"post","path":"/backup.manualBackupMariadb"},{"method":"post","path":"/backup.manualBackupMongo"}]} hasHead={true} />

View File

@@ -0,0 +1,46 @@
---
title: Bitbucket
full: true
_openapi:
toc:
- depth: 2
title: Bitbucket create
url: '#bitbucket-create'
- depth: 2
title: Bitbucket one
url: '#bitbucket-one'
- depth: 2
title: Bitbucket bitbucket Providers
url: '#bitbucket-bitbucket-providers'
- depth: 2
title: Bitbucket get Bitbucket Repositories
url: '#bitbucket-get-bitbucket-repositories'
- depth: 2
title: Bitbucket get Bitbucket Branches
url: '#bitbucket-get-bitbucket-branches'
- depth: 2
title: Bitbucket test Connection
url: '#bitbucket-test-connection'
- depth: 2
title: Bitbucket update
url: '#bitbucket-update'
structuredData:
headings:
- content: Bitbucket create
id: bitbucket-create
- content: Bitbucket one
id: bitbucket-one
- content: Bitbucket bitbucket Providers
id: bitbucket-bitbucket-providers
- content: Bitbucket get Bitbucket Repositories
id: bitbucket-get-bitbucket-repositories
- content: Bitbucket get Bitbucket Branches
id: bitbucket-get-bitbucket-branches
- content: Bitbucket test Connection
id: bitbucket-test-connection
- content: Bitbucket update
id: bitbucket-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/bitbucket.create"},{"method":"get","path":"/bitbucket.one"},{"method":"get","path":"/bitbucket.bitbucketProviders"},{"method":"get","path":"/bitbucket.getBitbucketRepositories"},{"method":"get","path":"/bitbucket.getBitbucketBranches"},{"method":"post","path":"/bitbucket.testConnection"},{"method":"post","path":"/bitbucket.update"}]} hasHead={true} />

View File

@@ -0,0 +1,31 @@
---
title: Certificates
full: true
_openapi:
toc:
- depth: 2
title: Certificates create
url: '#certificates-create'
- depth: 2
title: Certificates one
url: '#certificates-one'
- depth: 2
title: Certificates remove
url: '#certificates-remove'
- depth: 2
title: Certificates all
url: '#certificates-all'
structuredData:
headings:
- content: Certificates create
id: certificates-create
- content: Certificates one
id: certificates-one
- content: Certificates remove
id: certificates-remove
- content: Certificates all
id: certificates-all
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/certificates.create"},{"method":"get","path":"/certificates.one"},{"method":"post","path":"/certificates.remove"},{"method":"get","path":"/certificates.all"}]} hasHead={true} />

View File

@@ -0,0 +1,31 @@
---
title: Cluster
full: true
_openapi:
toc:
- depth: 2
title: Cluster get Nodes
url: '#cluster-get-nodes'
- depth: 2
title: Cluster remove Worker
url: '#cluster-remove-worker'
- depth: 2
title: Cluster add Worker
url: '#cluster-add-worker'
- depth: 2
title: Cluster add Manager
url: '#cluster-add-manager'
structuredData:
headings:
- content: Cluster get Nodes
id: cluster-get-nodes
- content: Cluster remove Worker
id: cluster-remove-worker
- content: Cluster add Worker
id: cluster-add-worker
- content: Cluster add Manager
id: cluster-add-manager
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"get","path":"/cluster.getNodes"},{"method":"post","path":"/cluster.removeWorker"},{"method":"get","path":"/cluster.addWorker"},{"method":"get","path":"/cluster.addManager"}]} hasHead={true} />

View File

@@ -0,0 +1,96 @@
---
title: Compose
full: true
_openapi:
toc:
- depth: 2
title: Compose create
url: '#compose-create'
- depth: 2
title: Compose one
url: '#compose-one'
- depth: 2
title: Compose update
url: '#compose-update'
- depth: 2
title: Compose delete
url: '#compose-delete'
- depth: 2
title: Compose clean Queues
url: '#compose-clean-queues'
- depth: 2
title: Compose load Services
url: '#compose-load-services'
- depth: 2
title: Compose fetch Source Type
url: '#compose-fetch-source-type'
- depth: 2
title: Compose randomize Compose
url: '#compose-randomize-compose'
- depth: 2
title: Compose get Converted Compose
url: '#compose-get-converted-compose'
- depth: 2
title: Compose deploy
url: '#compose-deploy'
- depth: 2
title: Compose redeploy
url: '#compose-redeploy'
- depth: 2
title: Compose stop
url: '#compose-stop'
- depth: 2
title: Compose get Default Command
url: '#compose-get-default-command'
- depth: 2
title: Compose refresh Token
url: '#compose-refresh-token'
- depth: 2
title: Compose deploy Template
url: '#compose-deploy-template'
- depth: 2
title: Compose templates
url: '#compose-templates'
- depth: 2
title: Compose get Tags
url: '#compose-get-tags'
structuredData:
headings:
- content: Compose create
id: compose-create
- content: Compose one
id: compose-one
- content: Compose update
id: compose-update
- content: Compose delete
id: compose-delete
- content: Compose clean Queues
id: compose-clean-queues
- content: Compose load Services
id: compose-load-services
- content: Compose fetch Source Type
id: compose-fetch-source-type
- content: Compose randomize Compose
id: compose-randomize-compose
- content: Compose get Converted Compose
id: compose-get-converted-compose
- content: Compose deploy
id: compose-deploy
- content: Compose redeploy
id: compose-redeploy
- content: Compose stop
id: compose-stop
- content: Compose get Default Command
id: compose-get-default-command
- content: Compose refresh Token
id: compose-refresh-token
- content: Compose deploy Template
id: compose-deploy-template
- content: Compose templates
id: compose-templates
- content: Compose get Tags
id: compose-get-tags
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/compose.create"},{"method":"get","path":"/compose.one"},{"method":"post","path":"/compose.update"},{"method":"post","path":"/compose.delete"},{"method":"post","path":"/compose.cleanQueues"},{"method":"get","path":"/compose.loadServices"},{"method":"post","path":"/compose.fetchSourceType"},{"method":"post","path":"/compose.randomizeCompose"},{"method":"get","path":"/compose.getConvertedCompose"},{"method":"post","path":"/compose.deploy"},{"method":"post","path":"/compose.redeploy"},{"method":"post","path":"/compose.stop"},{"method":"get","path":"/compose.getDefaultCommand"},{"method":"post","path":"/compose.refreshToken"},{"method":"post","path":"/compose.deployTemplate"},{"method":"get","path":"/compose.templates"},{"method":"get","path":"/compose.getTags"}]} hasHead={true} />

View File

@@ -0,0 +1,26 @@
---
title: Deployment
full: true
_openapi:
toc:
- depth: 2
title: Deployment all
url: '#deployment-all'
- depth: 2
title: Deployment all By Compose
url: '#deployment-all-by-compose'
- depth: 2
title: Deployment all By Server
url: '#deployment-all-by-server'
structuredData:
headings:
- content: Deployment all
id: deployment-all
- content: Deployment all By Compose
id: deployment-all-by-compose
- content: Deployment all By Server
id: deployment-all-by-server
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"get","path":"/deployment.all"},{"method":"get","path":"/deployment.allByCompose"},{"method":"get","path":"/deployment.allByServer"}]} hasHead={true} />

View File

@@ -0,0 +1,41 @@
---
title: Destination
full: true
_openapi:
toc:
- depth: 2
title: Destination create
url: '#destination-create'
- depth: 2
title: Destination test Connection
url: '#destination-test-connection'
- depth: 2
title: Destination one
url: '#destination-one'
- depth: 2
title: Destination all
url: '#destination-all'
- depth: 2
title: Destination remove
url: '#destination-remove'
- depth: 2
title: Destination update
url: '#destination-update'
structuredData:
headings:
- content: Destination create
id: destination-create
- content: Destination test Connection
id: destination-test-connection
- content: Destination one
id: destination-one
- content: Destination all
id: destination-all
- content: Destination remove
id: destination-remove
- content: Destination update
id: destination-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/destination.create"},{"method":"post","path":"/destination.testConnection"},{"method":"get","path":"/destination.one"},{"method":"get","path":"/destination.all"},{"method":"post","path":"/destination.remove"},{"method":"post","path":"/destination.update"}]} hasHead={true} />

View File

@@ -0,0 +1,36 @@
---
title: Docker
full: true
_openapi:
toc:
- depth: 2
title: Docker get Containers
url: '#docker-get-containers'
- depth: 2
title: Docker restart Container
url: '#docker-restart-container'
- depth: 2
title: Docker get Config
url: '#docker-get-config'
- depth: 2
title: Docker get Containers By App Name Match
url: '#docker-get-containers-by-app-name-match'
- depth: 2
title: Docker get Containers By App Label
url: '#docker-get-containers-by-app-label'
structuredData:
headings:
- content: Docker get Containers
id: docker-get-containers
- content: Docker restart Container
id: docker-restart-container
- content: Docker get Config
id: docker-get-config
- content: Docker get Containers By App Name Match
id: docker-get-containers-by-app-name-match
- content: Docker get Containers By App Label
id: docker-get-containers-by-app-label
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"get","path":"/docker.getContainers"},{"method":"post","path":"/docker.restartContainer"},{"method":"get","path":"/docker.getConfig"},{"method":"get","path":"/docker.getContainersByAppNameMatch"},{"method":"get","path":"/docker.getContainersByAppLabel"}]} hasHead={true} />

View File

@@ -0,0 +1,46 @@
---
title: Domain
full: true
_openapi:
toc:
- depth: 2
title: Domain create
url: '#domain-create'
- depth: 2
title: Domain by Application Id
url: '#domain-by-application-id'
- depth: 2
title: Domain by Compose Id
url: '#domain-by-compose-id'
- depth: 2
title: Domain generate Domain
url: '#domain-generate-domain'
- depth: 2
title: Domain update
url: '#domain-update'
- depth: 2
title: Domain one
url: '#domain-one'
- depth: 2
title: Domain delete
url: '#domain-delete'
structuredData:
headings:
- content: Domain create
id: domain-create
- content: Domain by Application Id
id: domain-by-application-id
- content: Domain by Compose Id
id: domain-by-compose-id
- content: Domain generate Domain
id: domain-generate-domain
- content: Domain update
id: domain-update
- content: Domain one
id: domain-one
- content: Domain delete
id: domain-delete
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/domain.create"},{"method":"get","path":"/domain.byApplicationId"},{"method":"get","path":"/domain.byComposeId"},{"method":"post","path":"/domain.generateDomain"},{"method":"post","path":"/domain.update"},{"method":"get","path":"/domain.one"},{"method":"post","path":"/domain.delete"}]} hasHead={true} />

View File

@@ -0,0 +1,21 @@
---
title: Git Provider
full: true
_openapi:
toc:
- depth: 2
title: Git Provider get All
url: '#git-provider-get-all'
- depth: 2
title: Git Provider remove
url: '#git-provider-remove'
structuredData:
headings:
- content: Git Provider get All
id: git-provider-get-all
- content: Git Provider remove
id: git-provider-remove
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"get","path":"/gitProvider.getAll"},{"method":"post","path":"/gitProvider.remove"}]} hasHead={true} />

View File

@@ -0,0 +1,41 @@
---
title: Github
full: true
_openapi:
toc:
- depth: 2
title: Github one
url: '#github-one'
- depth: 2
title: Github get Github Repositories
url: '#github-get-github-repositories'
- depth: 2
title: Github get Github Branches
url: '#github-get-github-branches'
- depth: 2
title: Github github Providers
url: '#github-github-providers'
- depth: 2
title: Github test Connection
url: '#github-test-connection'
- depth: 2
title: Github update
url: '#github-update'
structuredData:
headings:
- content: Github one
id: github-one
- content: Github get Github Repositories
id: github-get-github-repositories
- content: Github get Github Branches
id: github-get-github-branches
- content: Github github Providers
id: github-github-providers
- content: Github test Connection
id: github-test-connection
- content: Github update
id: github-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"get","path":"/github.one"},{"method":"get","path":"/github.getGithubRepositories"},{"method":"get","path":"/github.getGithubBranches"},{"method":"get","path":"/github.githubProviders"},{"method":"post","path":"/github.testConnection"},{"method":"post","path":"/github.update"}]} hasHead={true} />

View File

@@ -0,0 +1,46 @@
---
title: Gitlab
full: true
_openapi:
toc:
- depth: 2
title: Gitlab create
url: '#gitlab-create'
- depth: 2
title: Gitlab one
url: '#gitlab-one'
- depth: 2
title: Gitlab gitlab Providers
url: '#gitlab-gitlab-providers'
- depth: 2
title: Gitlab get Gitlab Repositories
url: '#gitlab-get-gitlab-repositories'
- depth: 2
title: Gitlab get Gitlab Branches
url: '#gitlab-get-gitlab-branches'
- depth: 2
title: Gitlab test Connection
url: '#gitlab-test-connection'
- depth: 2
title: Gitlab update
url: '#gitlab-update'
structuredData:
headings:
- content: Gitlab create
id: gitlab-create
- content: Gitlab one
id: gitlab-one
- content: Gitlab gitlab Providers
id: gitlab-gitlab-providers
- content: Gitlab get Gitlab Repositories
id: gitlab-get-gitlab-repositories
- content: Gitlab get Gitlab Branches
id: gitlab-get-gitlab-branches
- content: Gitlab test Connection
id: gitlab-test-connection
- content: Gitlab update
id: gitlab-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/gitlab.create"},{"method":"get","path":"/gitlab.one"},{"method":"get","path":"/gitlab.gitlabProviders"},{"method":"get","path":"/gitlab.getGitlabRepositories"},{"method":"get","path":"/gitlab.getGitlabBranches"},{"method":"post","path":"/gitlab.testConnection"},{"method":"post","path":"/gitlab.update"}]} hasHead={true} />

View File

@@ -0,0 +1,66 @@
---
title: Mariadb
full: true
_openapi:
toc:
- depth: 2
title: Mariadb create
url: '#mariadb-create'
- depth: 2
title: Mariadb one
url: '#mariadb-one'
- depth: 2
title: Mariadb start
url: '#mariadb-start'
- depth: 2
title: Mariadb stop
url: '#mariadb-stop'
- depth: 2
title: Mariadb save External Port
url: '#mariadb-save-external-port'
- depth: 2
title: Mariadb deploy
url: '#mariadb-deploy'
- depth: 2
title: Mariadb change Status
url: '#mariadb-change-status'
- depth: 2
title: Mariadb remove
url: '#mariadb-remove'
- depth: 2
title: Mariadb save Environment
url: '#mariadb-save-environment'
- depth: 2
title: Mariadb reload
url: '#mariadb-reload'
- depth: 2
title: Mariadb update
url: '#mariadb-update'
structuredData:
headings:
- content: Mariadb create
id: mariadb-create
- content: Mariadb one
id: mariadb-one
- content: Mariadb start
id: mariadb-start
- content: Mariadb stop
id: mariadb-stop
- content: Mariadb save External Port
id: mariadb-save-external-port
- content: Mariadb deploy
id: mariadb-deploy
- content: Mariadb change Status
id: mariadb-change-status
- content: Mariadb remove
id: mariadb-remove
- content: Mariadb save Environment
id: mariadb-save-environment
- content: Mariadb reload
id: mariadb-reload
- content: Mariadb update
id: mariadb-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/mariadb.create"},{"method":"get","path":"/mariadb.one"},{"method":"post","path":"/mariadb.start"},{"method":"post","path":"/mariadb.stop"},{"method":"post","path":"/mariadb.saveExternalPort"},{"method":"post","path":"/mariadb.deploy"},{"method":"post","path":"/mariadb.changeStatus"},{"method":"post","path":"/mariadb.remove"},{"method":"post","path":"/mariadb.saveEnvironment"},{"method":"post","path":"/mariadb.reload"},{"method":"post","path":"/mariadb.update"}]} hasHead={true} />

View File

@@ -0,0 +1,66 @@
---
title: Mongo
full: true
_openapi:
toc:
- depth: 2
title: Mongo create
url: '#mongo-create'
- depth: 2
title: Mongo one
url: '#mongo-one'
- depth: 2
title: Mongo start
url: '#mongo-start'
- depth: 2
title: Mongo stop
url: '#mongo-stop'
- depth: 2
title: Mongo save External Port
url: '#mongo-save-external-port'
- depth: 2
title: Mongo deploy
url: '#mongo-deploy'
- depth: 2
title: Mongo change Status
url: '#mongo-change-status'
- depth: 2
title: Mongo reload
url: '#mongo-reload'
- depth: 2
title: Mongo remove
url: '#mongo-remove'
- depth: 2
title: Mongo save Environment
url: '#mongo-save-environment'
- depth: 2
title: Mongo update
url: '#mongo-update'
structuredData:
headings:
- content: Mongo create
id: mongo-create
- content: Mongo one
id: mongo-one
- content: Mongo start
id: mongo-start
- content: Mongo stop
id: mongo-stop
- content: Mongo save External Port
id: mongo-save-external-port
- content: Mongo deploy
id: mongo-deploy
- content: Mongo change Status
id: mongo-change-status
- content: Mongo reload
id: mongo-reload
- content: Mongo remove
id: mongo-remove
- content: Mongo save Environment
id: mongo-save-environment
- content: Mongo update
id: mongo-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/mongo.create"},{"method":"get","path":"/mongo.one"},{"method":"post","path":"/mongo.start"},{"method":"post","path":"/mongo.stop"},{"method":"post","path":"/mongo.saveExternalPort"},{"method":"post","path":"/mongo.deploy"},{"method":"post","path":"/mongo.changeStatus"},{"method":"post","path":"/mongo.reload"},{"method":"post","path":"/mongo.remove"},{"method":"post","path":"/mongo.saveEnvironment"},{"method":"post","path":"/mongo.update"}]} hasHead={true} />

View File

@@ -0,0 +1,31 @@
---
title: Mounts
full: true
_openapi:
toc:
- depth: 2
title: Mounts create
url: '#mounts-create'
- depth: 2
title: Mounts remove
url: '#mounts-remove'
- depth: 2
title: Mounts one
url: '#mounts-one'
- depth: 2
title: Mounts update
url: '#mounts-update'
structuredData:
headings:
- content: Mounts create
id: mounts-create
- content: Mounts remove
id: mounts-remove
- content: Mounts one
id: mounts-one
- content: Mounts update
id: mounts-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/mounts.create"},{"method":"post","path":"/mounts.remove"},{"method":"get","path":"/mounts.one"},{"method":"post","path":"/mounts.update"}]} hasHead={true} />

View File

@@ -0,0 +1,66 @@
---
title: Mysql
full: true
_openapi:
toc:
- depth: 2
title: Mysql create
url: '#mysql-create'
- depth: 2
title: Mysql one
url: '#mysql-one'
- depth: 2
title: Mysql start
url: '#mysql-start'
- depth: 2
title: Mysql stop
url: '#mysql-stop'
- depth: 2
title: Mysql save External Port
url: '#mysql-save-external-port'
- depth: 2
title: Mysql deploy
url: '#mysql-deploy'
- depth: 2
title: Mysql change Status
url: '#mysql-change-status'
- depth: 2
title: Mysql reload
url: '#mysql-reload'
- depth: 2
title: Mysql remove
url: '#mysql-remove'
- depth: 2
title: Mysql save Environment
url: '#mysql-save-environment'
- depth: 2
title: Mysql update
url: '#mysql-update'
structuredData:
headings:
- content: Mysql create
id: mysql-create
- content: Mysql one
id: mysql-one
- content: Mysql start
id: mysql-start
- content: Mysql stop
id: mysql-stop
- content: Mysql save External Port
id: mysql-save-external-port
- content: Mysql deploy
id: mysql-deploy
- content: Mysql change Status
id: mysql-change-status
- content: Mysql reload
id: mysql-reload
- content: Mysql remove
id: mysql-remove
- content: Mysql save Environment
id: mysql-save-environment
- content: Mysql update
id: mysql-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/mysql.create"},{"method":"get","path":"/mysql.one"},{"method":"post","path":"/mysql.start"},{"method":"post","path":"/mysql.stop"},{"method":"post","path":"/mysql.saveExternalPort"},{"method":"post","path":"/mysql.deploy"},{"method":"post","path":"/mysql.changeStatus"},{"method":"post","path":"/mysql.reload"},{"method":"post","path":"/mysql.remove"},{"method":"post","path":"/mysql.saveEnvironment"},{"method":"post","path":"/mysql.update"}]} hasHead={true} />

View File

@@ -0,0 +1,86 @@
---
title: Notification
full: true
_openapi:
toc:
- depth: 2
title: Notification create Slack
url: '#notification-create-slack'
- depth: 2
title: Notification update Slack
url: '#notification-update-slack'
- depth: 2
title: Notification test Slack Connection
url: '#notification-test-slack-connection'
- depth: 2
title: Notification create Telegram
url: '#notification-create-telegram'
- depth: 2
title: Notification update Telegram
url: '#notification-update-telegram'
- depth: 2
title: Notification test Telegram Connection
url: '#notification-test-telegram-connection'
- depth: 2
title: Notification create Discord
url: '#notification-create-discord'
- depth: 2
title: Notification update Discord
url: '#notification-update-discord'
- depth: 2
title: Notification test Discord Connection
url: '#notification-test-discord-connection'
- depth: 2
title: Notification create Email
url: '#notification-create-email'
- depth: 2
title: Notification update Email
url: '#notification-update-email'
- depth: 2
title: Notification test Email Connection
url: '#notification-test-email-connection'
- depth: 2
title: Notification remove
url: '#notification-remove'
- depth: 2
title: Notification one
url: '#notification-one'
- depth: 2
title: Notification all
url: '#notification-all'
structuredData:
headings:
- content: Notification create Slack
id: notification-create-slack
- content: Notification update Slack
id: notification-update-slack
- content: Notification test Slack Connection
id: notification-test-slack-connection
- content: Notification create Telegram
id: notification-create-telegram
- content: Notification update Telegram
id: notification-update-telegram
- content: Notification test Telegram Connection
id: notification-test-telegram-connection
- content: Notification create Discord
id: notification-create-discord
- content: Notification update Discord
id: notification-update-discord
- content: Notification test Discord Connection
id: notification-test-discord-connection
- content: Notification create Email
id: notification-create-email
- content: Notification update Email
id: notification-update-email
- content: Notification test Email Connection
id: notification-test-email-connection
- content: Notification remove
id: notification-remove
- content: Notification one
id: notification-one
- content: Notification all
id: notification-all
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/notification.createSlack"},{"method":"post","path":"/notification.updateSlack"},{"method":"post","path":"/notification.testSlackConnection"},{"method":"post","path":"/notification.createTelegram"},{"method":"post","path":"/notification.updateTelegram"},{"method":"post","path":"/notification.testTelegramConnection"},{"method":"post","path":"/notification.createDiscord"},{"method":"post","path":"/notification.updateDiscord"},{"method":"post","path":"/notification.testDiscordConnection"},{"method":"post","path":"/notification.createEmail"},{"method":"post","path":"/notification.updateEmail"},{"method":"post","path":"/notification.testEmailConnection"},{"method":"post","path":"/notification.remove"},{"method":"get","path":"/notification.one"},{"method":"get","path":"/notification.all"}]} hasHead={true} />

View File

@@ -0,0 +1,31 @@
---
title: Port
full: true
_openapi:
toc:
- depth: 2
title: Port create
url: '#port-create'
- depth: 2
title: Port one
url: '#port-one'
- depth: 2
title: Port delete
url: '#port-delete'
- depth: 2
title: Port update
url: '#port-update'
structuredData:
headings:
- content: Port create
id: port-create
- content: Port one
id: port-one
- content: Port delete
id: port-delete
- content: Port update
id: port-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/port.create"},{"method":"get","path":"/port.one"},{"method":"post","path":"/port.delete"},{"method":"post","path":"/port.update"}]} hasHead={true} />

View File

@@ -0,0 +1,66 @@
---
title: Postgres
full: true
_openapi:
toc:
- depth: 2
title: Postgres create
url: '#postgres-create'
- depth: 2
title: Postgres one
url: '#postgres-one'
- depth: 2
title: Postgres start
url: '#postgres-start'
- depth: 2
title: Postgres stop
url: '#postgres-stop'
- depth: 2
title: Postgres save External Port
url: '#postgres-save-external-port'
- depth: 2
title: Postgres deploy
url: '#postgres-deploy'
- depth: 2
title: Postgres change Status
url: '#postgres-change-status'
- depth: 2
title: Postgres remove
url: '#postgres-remove'
- depth: 2
title: Postgres save Environment
url: '#postgres-save-environment'
- depth: 2
title: Postgres reload
url: '#postgres-reload'
- depth: 2
title: Postgres update
url: '#postgres-update'
structuredData:
headings:
- content: Postgres create
id: postgres-create
- content: Postgres one
id: postgres-one
- content: Postgres start
id: postgres-start
- content: Postgres stop
id: postgres-stop
- content: Postgres save External Port
id: postgres-save-external-port
- content: Postgres deploy
id: postgres-deploy
- content: Postgres change Status
id: postgres-change-status
- content: Postgres remove
id: postgres-remove
- content: Postgres save Environment
id: postgres-save-environment
- content: Postgres reload
id: postgres-reload
- content: Postgres update
id: postgres-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/postgres.create"},{"method":"get","path":"/postgres.one"},{"method":"post","path":"/postgres.start"},{"method":"post","path":"/postgres.stop"},{"method":"post","path":"/postgres.saveExternalPort"},{"method":"post","path":"/postgres.deploy"},{"method":"post","path":"/postgres.changeStatus"},{"method":"post","path":"/postgres.remove"},{"method":"post","path":"/postgres.saveEnvironment"},{"method":"post","path":"/postgres.reload"},{"method":"post","path":"/postgres.update"}]} hasHead={true} />

View File

@@ -0,0 +1,36 @@
---
title: Project
full: true
_openapi:
toc:
- depth: 2
title: Project create
url: '#project-create'
- depth: 2
title: Project one
url: '#project-one'
- depth: 2
title: Project all
url: '#project-all'
- depth: 2
title: Project remove
url: '#project-remove'
- depth: 2
title: Project update
url: '#project-update'
structuredData:
headings:
- content: Project create
id: project-create
- content: Project one
id: project-one
- content: Project all
id: project-all
- content: Project remove
id: project-remove
- content: Project update
id: project-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/project.create"},{"method":"get","path":"/project.one"},{"method":"get","path":"/project.all"},{"method":"post","path":"/project.remove"},{"method":"post","path":"/project.update"}]} hasHead={true} />

View File

@@ -0,0 +1,31 @@
---
title: Redirects
full: true
_openapi:
toc:
- depth: 2
title: Redirects create
url: '#redirects-create'
- depth: 2
title: Redirects one
url: '#redirects-one'
- depth: 2
title: Redirects delete
url: '#redirects-delete'
- depth: 2
title: Redirects update
url: '#redirects-update'
structuredData:
headings:
- content: Redirects create
id: redirects-create
- content: Redirects one
id: redirects-one
- content: Redirects delete
id: redirects-delete
- content: Redirects update
id: redirects-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/redirects.create"},{"method":"get","path":"/redirects.one"},{"method":"post","path":"/redirects.delete"},{"method":"post","path":"/redirects.update"}]} hasHead={true} />

View File

@@ -0,0 +1,66 @@
---
title: Redis
full: true
_openapi:
toc:
- depth: 2
title: Redis create
url: '#redis-create'
- depth: 2
title: Redis one
url: '#redis-one'
- depth: 2
title: Redis start
url: '#redis-start'
- depth: 2
title: Redis reload
url: '#redis-reload'
- depth: 2
title: Redis stop
url: '#redis-stop'
- depth: 2
title: Redis save External Port
url: '#redis-save-external-port'
- depth: 2
title: Redis deploy
url: '#redis-deploy'
- depth: 2
title: Redis change Status
url: '#redis-change-status'
- depth: 2
title: Redis remove
url: '#redis-remove'
- depth: 2
title: Redis save Environment
url: '#redis-save-environment'
- depth: 2
title: Redis update
url: '#redis-update'
structuredData:
headings:
- content: Redis create
id: redis-create
- content: Redis one
id: redis-one
- content: Redis start
id: redis-start
- content: Redis reload
id: redis-reload
- content: Redis stop
id: redis-stop
- content: Redis save External Port
id: redis-save-external-port
- content: Redis deploy
id: redis-deploy
- content: Redis change Status
id: redis-change-status
- content: Redis remove
id: redis-remove
- content: Redis save Environment
id: redis-save-environment
- content: Redis update
id: redis-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/redis.create"},{"method":"get","path":"/redis.one"},{"method":"post","path":"/redis.start"},{"method":"post","path":"/redis.reload"},{"method":"post","path":"/redis.stop"},{"method":"post","path":"/redis.saveExternalPort"},{"method":"post","path":"/redis.deploy"},{"method":"post","path":"/redis.changeStatus"},{"method":"post","path":"/redis.remove"},{"method":"post","path":"/redis.saveEnvironment"},{"method":"post","path":"/redis.update"}]} hasHead={true} />

View File

@@ -0,0 +1,41 @@
---
title: Registry
full: true
_openapi:
toc:
- depth: 2
title: Registry create
url: '#registry-create'
- depth: 2
title: Registry remove
url: '#registry-remove'
- depth: 2
title: Registry update
url: '#registry-update'
- depth: 2
title: Registry all
url: '#registry-all'
- depth: 2
title: Registry one
url: '#registry-one'
- depth: 2
title: Registry test Registry
url: '#registry-test-registry'
structuredData:
headings:
- content: Registry create
id: registry-create
- content: Registry remove
id: registry-remove
- content: Registry update
id: registry-update
- content: Registry all
id: registry-all
- content: Registry one
id: registry-one
- content: Registry test Registry
id: registry-test-registry
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/registry.create"},{"method":"post","path":"/registry.remove"},{"method":"post","path":"/registry.update"},{"method":"get","path":"/registry.all"},{"method":"get","path":"/registry.one"},{"method":"post","path":"/registry.testRegistry"}]} hasHead={true} />

View File

@@ -0,0 +1,31 @@
---
title: Security
full: true
_openapi:
toc:
- depth: 2
title: Security create
url: '#security-create'
- depth: 2
title: Security one
url: '#security-one'
- depth: 2
title: Security delete
url: '#security-delete'
- depth: 2
title: Security update
url: '#security-update'
structuredData:
headings:
- content: Security create
id: security-create
- content: Security one
id: security-one
- content: Security delete
id: security-delete
- content: Security update
id: security-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/security.create"},{"method":"get","path":"/security.one"},{"method":"post","path":"/security.delete"},{"method":"post","path":"/security.update"}]} hasHead={true} />

View File

@@ -0,0 +1,46 @@
---
title: Server
full: true
_openapi:
toc:
- depth: 2
title: Server create
url: '#server-create'
- depth: 2
title: Server one
url: '#server-one'
- depth: 2
title: Server all
url: '#server-all'
- depth: 2
title: Server with S S H Key
url: '#server-with-s-s-h-key'
- depth: 2
title: Server setup
url: '#server-setup'
- depth: 2
title: Server remove
url: '#server-remove'
- depth: 2
title: Server update
url: '#server-update'
structuredData:
headings:
- content: Server create
id: server-create
- content: Server one
id: server-one
- content: Server all
id: server-all
- content: Server with S S H Key
id: server-with-s-s-h-key
- content: Server setup
id: server-setup
- content: Server remove
id: server-remove
- content: Server update
id: server-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/server.create"},{"method":"get","path":"/server.one"},{"method":"get","path":"/server.all"},{"method":"get","path":"/server.withSSHKey"},{"method":"post","path":"/server.setup"},{"method":"post","path":"/server.remove"},{"method":"post","path":"/server.update"}]} hasHead={true} />

View File

@@ -0,0 +1,201 @@
---
title: Settings
full: true
_openapi:
toc:
- depth: 2
title: Settings reload Server
url: '#settings-reload-server'
- depth: 2
title: Settings reload Traefik
url: '#settings-reload-traefik'
- depth: 2
title: Settings toggle Dashboard
url: '#settings-toggle-dashboard'
- depth: 2
title: Settings clean Unused Images
url: '#settings-clean-unused-images'
- depth: 2
title: Settings clean Unused Volumes
url: '#settings-clean-unused-volumes'
- depth: 2
title: Settings clean Stopped Containers
url: '#settings-clean-stopped-containers'
- depth: 2
title: Settings clean Docker Builder
url: '#settings-clean-docker-builder'
- depth: 2
title: Settings clean Docker Prune
url: '#settings-clean-docker-prune'
- depth: 2
title: Settings clean All
url: '#settings-clean-all'
- depth: 2
title: Settings clean Monitoring
url: '#settings-clean-monitoring'
- depth: 2
title: Settings save S S H Private Key
url: '#settings-save-s-s-h-private-key'
- depth: 2
title: Settings assign Domain Server
url: '#settings-assign-domain-server'
- depth: 2
title: Settings clean S S H Private Key
url: '#settings-clean-s-s-h-private-key'
- depth: 2
title: Settings update Docker Cleanup
url: '#settings-update-docker-cleanup'
- depth: 2
title: Settings read Traefik Config
url: '#settings-read-traefik-config'
- depth: 2
title: Settings update Traefik Config
url: '#settings-update-traefik-config'
- depth: 2
title: Settings read Web Server Traefik Config
url: '#settings-read-web-server-traefik-config'
- depth: 2
title: Settings update Web Server Traefik Config
url: '#settings-update-web-server-traefik-config'
- depth: 2
title: Settings read Middleware Traefik Config
url: '#settings-read-middleware-traefik-config'
- depth: 2
title: Settings update Middleware Traefik Config
url: '#settings-update-middleware-traefik-config'
- depth: 2
title: Settings check And Update Image
url: '#settings-check-and-update-image'
- depth: 2
title: Settings update Server
url: '#settings-update-server'
- depth: 2
title: Settings get Dokploy Version
url: '#settings-get-dokploy-version'
- depth: 2
title: Settings read Directories
url: '#settings-read-directories'
- depth: 2
title: Settings update Traefik File
url: '#settings-update-traefik-file'
- depth: 2
title: Settings read Traefik File
url: '#settings-read-traefik-file'
- depth: 2
title: Settings get Ip
url: '#settings-get-ip'
- depth: 2
title: Settings get Open Api Document
url: '#settings-get-open-api-document'
- depth: 2
title: Settings read Traefik Env
url: '#settings-read-traefik-env'
- depth: 2
title: Settings write Traefik Env
url: '#settings-write-traefik-env'
- depth: 2
title: Settings have Traefik Dashboard Port Enabled
url: '#settings-have-traefik-dashboard-port-enabled'
- depth: 2
title: Settings read Stats
url: '#settings-read-stats'
- depth: 2
title: Settings get Log Rotate Status
url: '#settings-get-log-rotate-status'
- depth: 2
title: Settings toggle Log Rotate
url: '#settings-toggle-log-rotate'
- depth: 2
title: Settings have Activate Requests
url: '#settings-have-activate-requests'
- depth: 2
title: Settings toggle Requests
url: '#settings-toggle-requests'
- depth: 2
title: Settings is Cloud
url: '#settings-is-cloud'
- depth: 2
title: Settings health
url: '#settings-health'
structuredData:
headings:
- content: Settings reload Server
id: settings-reload-server
- content: Settings reload Traefik
id: settings-reload-traefik
- content: Settings toggle Dashboard
id: settings-toggle-dashboard
- content: Settings clean Unused Images
id: settings-clean-unused-images
- content: Settings clean Unused Volumes
id: settings-clean-unused-volumes
- content: Settings clean Stopped Containers
id: settings-clean-stopped-containers
- content: Settings clean Docker Builder
id: settings-clean-docker-builder
- content: Settings clean Docker Prune
id: settings-clean-docker-prune
- content: Settings clean All
id: settings-clean-all
- content: Settings clean Monitoring
id: settings-clean-monitoring
- content: Settings save S S H Private Key
id: settings-save-s-s-h-private-key
- content: Settings assign Domain Server
id: settings-assign-domain-server
- content: Settings clean S S H Private Key
id: settings-clean-s-s-h-private-key
- content: Settings update Docker Cleanup
id: settings-update-docker-cleanup
- content: Settings read Traefik Config
id: settings-read-traefik-config
- content: Settings update Traefik Config
id: settings-update-traefik-config
- content: Settings read Web Server Traefik Config
id: settings-read-web-server-traefik-config
- content: Settings update Web Server Traefik Config
id: settings-update-web-server-traefik-config
- content: Settings read Middleware Traefik Config
id: settings-read-middleware-traefik-config
- content: Settings update Middleware Traefik Config
id: settings-update-middleware-traefik-config
- content: Settings check And Update Image
id: settings-check-and-update-image
- content: Settings update Server
id: settings-update-server
- content: Settings get Dokploy Version
id: settings-get-dokploy-version
- content: Settings read Directories
id: settings-read-directories
- content: Settings update Traefik File
id: settings-update-traefik-file
- content: Settings read Traefik File
id: settings-read-traefik-file
- content: Settings get Ip
id: settings-get-ip
- content: Settings get Open Api Document
id: settings-get-open-api-document
- content: Settings read Traefik Env
id: settings-read-traefik-env
- content: Settings write Traefik Env
id: settings-write-traefik-env
- content: Settings have Traefik Dashboard Port Enabled
id: settings-have-traefik-dashboard-port-enabled
- content: Settings read Stats
id: settings-read-stats
- content: Settings get Log Rotate Status
id: settings-get-log-rotate-status
- content: Settings toggle Log Rotate
id: settings-toggle-log-rotate
- content: Settings have Activate Requests
id: settings-have-activate-requests
- content: Settings toggle Requests
id: settings-toggle-requests
- content: Settings is Cloud
id: settings-is-cloud
- content: Settings health
id: settings-health
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/settings.reloadServer"},{"method":"post","path":"/settings.reloadTraefik"},{"method":"post","path":"/settings.toggleDashboard"},{"method":"post","path":"/settings.cleanUnusedImages"},{"method":"post","path":"/settings.cleanUnusedVolumes"},{"method":"post","path":"/settings.cleanStoppedContainers"},{"method":"post","path":"/settings.cleanDockerBuilder"},{"method":"post","path":"/settings.cleanDockerPrune"},{"method":"post","path":"/settings.cleanAll"},{"method":"post","path":"/settings.cleanMonitoring"},{"method":"post","path":"/settings.saveSSHPrivateKey"},{"method":"post","path":"/settings.assignDomainServer"},{"method":"post","path":"/settings.cleanSSHPrivateKey"},{"method":"post","path":"/settings.updateDockerCleanup"},{"method":"get","path":"/settings.readTraefikConfig"},{"method":"post","path":"/settings.updateTraefikConfig"},{"method":"get","path":"/settings.readWebServerTraefikConfig"},{"method":"post","path":"/settings.updateWebServerTraefikConfig"},{"method":"get","path":"/settings.readMiddlewareTraefikConfig"},{"method":"post","path":"/settings.updateMiddlewareTraefikConfig"},{"method":"post","path":"/settings.checkAndUpdateImage"},{"method":"post","path":"/settings.updateServer"},{"method":"get","path":"/settings.getDokployVersion"},{"method":"get","path":"/settings.readDirectories"},{"method":"post","path":"/settings.updateTraefikFile"},{"method":"get","path":"/settings.readTraefikFile"},{"method":"get","path":"/settings.getIp"},{"method":"get","path":"/settings.getOpenApiDocument"},{"method":"get","path":"/settings.readTraefikEnv"},{"method":"post","path":"/settings.writeTraefikEnv"},{"method":"get","path":"/settings.haveTraefikDashboardPortEnabled"},{"method":"get","path":"/settings.readStats"},{"method":"get","path":"/settings.getLogRotateStatus"},{"method":"post","path":"/settings.toggleLogRotate"},{"method":"get","path":"/settings.haveActivateRequests"},{"method":"post","path":"/settings.toggleRequests"},{"method":"get","path":"/settings.isCloud"},{"method":"get","path":"/settings.health"}]} hasHead={true} />

View File

@@ -0,0 +1,41 @@
---
title: Ssh Key
full: true
_openapi:
toc:
- depth: 2
title: Ssh Key create
url: '#ssh-key-create'
- depth: 2
title: Ssh Key remove
url: '#ssh-key-remove'
- depth: 2
title: Ssh Key one
url: '#ssh-key-one'
- depth: 2
title: Ssh Key all
url: '#ssh-key-all'
- depth: 2
title: Ssh Key generate
url: '#ssh-key-generate'
- depth: 2
title: Ssh Key update
url: '#ssh-key-update'
structuredData:
headings:
- content: Ssh Key create
id: ssh-key-create
- content: Ssh Key remove
id: ssh-key-remove
- content: Ssh Key one
id: ssh-key-one
- content: Ssh Key all
id: ssh-key-all
- content: Ssh Key generate
id: ssh-key-generate
- content: Ssh Key update
id: ssh-key-update
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"post","path":"/sshKey.create"},{"method":"post","path":"/sshKey.remove"},{"method":"get","path":"/sshKey.one"},{"method":"get","path":"/sshKey.all"},{"method":"post","path":"/sshKey.generate"},{"method":"post","path":"/sshKey.update"}]} hasHead={true} />

View File

@@ -0,0 +1,31 @@
---
title: Stripe
full: true
_openapi:
toc:
- depth: 2
title: Stripe get Products
url: '#stripe-get-products'
- depth: 2
title: Stripe create Checkout Session
url: '#stripe-create-checkout-session'
- depth: 2
title: Stripe create Customer Portal Session
url: '#stripe-create-customer-portal-session'
- depth: 2
title: Stripe can Create More Servers
url: '#stripe-can-create-more-servers'
structuredData:
headings:
- content: Stripe get Products
id: stripe-get-products
- content: Stripe create Checkout Session
id: stripe-create-checkout-session
- content: Stripe create Customer Portal Session
id: stripe-create-customer-portal-session
- content: Stripe can Create More Servers
id: stripe-can-create-more-servers
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"get","path":"/stripe.getProducts"},{"method":"post","path":"/stripe.createCheckoutSession"},{"method":"post","path":"/stripe.createCustomerPortalSession"},{"method":"get","path":"/stripe.canCreateMoreServers"}]} hasHead={true} />

View File

@@ -0,0 +1,26 @@
---
title: User
full: true
_openapi:
toc:
- depth: 2
title: User all
url: '#user-all'
- depth: 2
title: User by Auth Id
url: '#user-by-auth-id'
- depth: 2
title: User by User Id
url: '#user-by-user-id'
structuredData:
headings:
- content: User all
id: user-all
- content: User by Auth Id
id: user-by-auth-id
- content: User by User Id
id: user-by-user-id
contents: []
---
<APIPage document={"./api.json"} operations={[{"method":"get","path":"/user.all"},{"method":"get","path":"/user.byAuthId"},{"method":"get","path":"/user.byUserId"}]} hasHead={true} />

View File

@@ -0,0 +1,20 @@
---
title: Application
description: A guide to using the Dokploy CLI to manage applications
---
The Dokploy CLI can be used to create, deploy, and manage applications.
## Requirements
Is required to be already authenticated with the Dokploy CLI.
## Commands
1. `dokploy app create` - Create a new application.
2. `dokploy app delete` - Delete an application.
3. `dokploy app deploy` - Deploy an application.
4. `dokploy app stop` - Stop a running application.

View File

@@ -0,0 +1,29 @@
---
title: Authentication
description: A guide to authenticating with the Dokploy CLI
---
The Dokploy CLI uses a token-based authentication system. To authenticate, you'll need to create an access token and store it securely.
## Creating an Access Token
To create an access token, first you need to have permissions if you are admin you don't need permissions.
by default access token never expires.
You can go to `dashboard/settings/profile` and click on the `Generate` button.
<ImageZoom src="/assets/cli/token.png" width={800} height={630} alt='home og image' className="rounded-lg" />
## Storing the Access Token
Dokploy when you create an access token automatically will generate a config.json with the access token and the server url.
## Commands
1. `dokploy authenticate` - Authenticate with the Dokploy CLI.
2. `dokploy verify` - Verify if the access token is valid.

View File

@@ -0,0 +1,45 @@
---
title: Databases
description: A guide to using the Dokploy CLI to manage databases
---
The Dokploy CLI can be used to create, deploy, and manage databases.
## Requirements
Is required to be already authenticated with the Dokploy CLI.
## Commands
### MariaDB
1. `dokploy database mariadb create` - Create a new mariadb database.
2. `dokploy database mariadb delete` - Delete an mariadb database.
3. `dokploy database mariadb deploy` - Deploy a mariadb database.
4. `dokploy database mariadb stop` - Stop a running mariadb database.
### PostgreSQL
1. `dokploy database postgresql create` - Create a new postgresql database.
2. `dokploy database postgresql delete` - Delete an postgresql database.
3. `dokploy database postgresql deploy` - Deploy a postgresql database.
4. `dokploy database postgresql stop` - Stop a running postgresql database.
### MySQL
1. `dokploy database mysql create` - Create a new mysql database.
2. `dokploy database mysql delete` - Delete an mysql database.
3. `dokploy database mysql deploy` - Deploy a mysql database.
4. `dokploy database mysql stop` - Stop a running mysql database.
### MongoDB
1. `dokploy database mongodb create` - Create a new mongodb database.
2. `dokploy database mongodb delete` - Delete an mongodb database.
3. `dokploy database mongodb deploy` - Deploy a mongodb database.
4. `dokploy database mongodb stop` - Stop a running mongodb database.
### Redis
1. `dokploy database redis create` - Create a new redis database.
2. `dokploy database redis delete` - Delete an redis database.
3. `dokploy database redis deploy` - Deploy a redis database.
4. `dokploy database redis stop` - Stop a running redis database.

View File

@@ -0,0 +1,23 @@
---
title: Introduction
description: A guide to using the Dokploy command-line interface
---
Dokploy CLI is a command-line tool for remotely managing your Dokploy server. It simplifies creating, deploying, and managing applications and databases.
## Installation
```bash
npm install -g @dokploy/cli
```
## Usage
```bash
dokploy COMMAND
```
To get help on a specific command:
```bash
dokploy COMMAND --help
```

View File

@@ -0,0 +1,13 @@
{
"title": "CLI",
"description": "CLI Documentation",
"icon": "Building2",
"root": true,
"pages": [
"---Get Started---",
"index",
"comparisons",
"---Commands---",
"..."
]
}

View File

@@ -0,0 +1,18 @@
---
title: Project
description: A guide to using the Dokploy CLI to manage projects
---
The Dokploy CLI can be used to create, deploy, and manage projects.
## Requirements
Is required to be already authenticated with the Dokploy CLI.
## Commands
1. `dokploy project create` - Create a new project.
2. `dokploy project info` - Get information about a project.
3. `dokploy project list` - List all projects.

View File

@@ -0,0 +1,73 @@
---
title: Bitbucket
description: 'Configure your Bitbucket repositories for deployments. This includes setting up access tokens, repository names, and branches.'
---
import { Callout } from 'fumadocs-ui/components/callout';
Dokploy offer a way to connect your Bitbucket Repository to your Dokploy panel, you can use Groups Names or personal accounts.
Go to `Git` and select `Bitbucket` as the source, then you can use the following options:
- **Bitbucket Username**: Set the username that you want to connect to Dokploy.
- **App Password**: Set the app password you've created.
- **Workspace(Optional)**: Assign a workspace name, this is useful if you want to connect to another workspace.
Follow the steps to connect your Bitbucket account to Dokploy.
1. Go to `https://bitbucket.org/account/settings/app-passwords/new` .
2. Set Label: eg. `Dokploy-Bitbucket-App`. you can choose any name that you want.
3. In permissions make sure to select `Account: Read`, `Workspace membership: Read`, `Projects: Read`
, `Repositories: Read` `Pull requests: Read` and `Webhooks: Read and write`.
4. Click on `Create`.
5. Copy the `App Password` and paste it in Dokploy `Bitbucket` Modal section.
6. Set your `Bitbucket Username`.
7. (Optional) If you want to use Workspaces, go to `https://bitbucket.org/account/workspaces/`, eg. If you have
`dokploy-workspace` copy and paste it in Workspace Name.
7. Click on `Configure Bitbucket`.
8. If everything is correct, you can update enter to the Update Icon, and click on `Test Connection` to make sure everything is working.
9. Now you can use the repositories from your Gitlab Account in `Applications` or `Docker Compose` services.
<Callout type='warn'>
Dokploy doesn't support Bitbucket Automatic deployments on each push you make to your repository.
</Callout>
## Setup Automatic Deployments
You can configure automatic deployments in Dokploy for the Following Services:
1. **Applications**
2. **Docker Compose**
The steps are the same for both services.
1. Go to either `Applications` or `Docker Compose` and go to `Deployments` Tab.
2. Copy the `Webhook URL`.
3. Go to your Bitbucket Account and select the repository.
4. In the left menu, select `Repository Settings` and then `Webhooks`.
5. Click on `Add Webhook`.
6. Set any `Title` and the `URL` to the one you copied in the previous step.
7. In the Trigger section, select `Push Events`.
8. Click on `Add Webhook`.
10. Now you have automatic deployments enabled for the selected repository.
## Clarification on Automatic Deployments
By default, Dokploy will automatically deploy your application on the Branch you have selected.
eg. Let's suppose you have a `application` in this way:
Repository: `my-app`
Branch: `feature`
If you try to make a push on another branch eg. `main`, Dokploy will not automatically deploy your application, because
your application have selected `feature` as the Branch.
<Callout>
In the case you want to have multiple applications in the same repository, eg. (development, staging, production), you can create 3 `Applications` in Dokploy
and select the branch in each of them.
This is very usefull if you want to have multiple environments for the same application.
</Callout>

View File

@@ -0,0 +1,48 @@
---
title: GitHub
description: 'Configure GitHub repositories for deployments. This includes setting up access tokens, repository names, and branches.'
---
import { Callout } from 'fumadocs-ui/components/callout';
Dokploy offer a way to connect your Github Repository to your Dokploy panel, you can use organizations or personal accounts.
Go to `Git` and select `Github` as the source, then you can use the following options:
- **Organization**: Select the organization that you want to connect to Dokploy.
- **Personal Account(Default)**: Select the account that you want to connect to Dokploy.
Follow the steps to connect your Github account to Dokploy.
1. Click on `Create Github App` to create a new Github App.
2. Set Github App Name: eg. `Dokploy-Github-App`. make sure this name is unique.
3. Click on `Create Github App`, then you will redirect to the `Git` section of Dokploy.
4. Now it will show a `Install` Button, click on it.
5. You can select the repositories that you want to dokploy be able to access, you can choose
select all repositories or select specific repositories.
6. Click on `Install & Authorize` to install the Dokploy App.
7. You will be redirected to the `Git` section of Dokploy.
8. Now you can use the repositories from your Github Account in `Applications` or `Docker Compose` services.
<Callout>
When you use this method, By default you will have Automatic deployments on each push you make to your repository.
</Callout>
## Clarification on Automatic Deployments
By default, Dokploy will automatically deploy your application on the Branch you have selected.
eg. Let's suppose you have a `application` in this way:
Repository: `my-app`
Branch: `feature`
If you try to make a push on another branch eg. `main`, Dokploy will not automatically deploy your application, because
your application have selected `feature` as the Branch.
<Callout>
In the case you want to have multiple applications in the same repository, eg. (development, staging, production), you can create 3 `Applications` in Dokploy
and select the branch in each of them.
This is very usefull if you want to have multiple environments for the same application.
</Callout>

View File

@@ -0,0 +1,79 @@
---
title: Gitlab
description: 'Configure Gitlab repositories for deployments. This includes setting up access tokens, repository names, and branches.'
---
import { Callout } from 'fumadocs-ui/components/callout';
Dokploy offer a way to connect your Gitlab Repository to your Dokploy panel, you can use Groups Names or personal accounts.
Go to `Git` and select `Gitlab` as the source, then you can use the following options:
- **Application ID**: Select the application ID that you want to connect to Dokploy.
- **Personal Secret**: Select the secret that you want to connect to Dokploy.
- **Group Name(Optional)**: Select the group name that you want to connect to Dokploy(Ideal for Gitlab Groups).
Follow the steps to connect your Gitlab account to Dokploy.
1. Go to `https://gitlab.com/-/profile/applications` and click on ` Add New Application`.
2. Set Application Name: eg. `Dokploy-Gitlab-App`. choose any name that you want.
3. Redirect URI: Copy the `Redirect URI` from Dokploy. eg. `https://dokploy.com/api/providers/gitlab/callback`.
4. Select Permissions: `api`, `read_user`, `read_repository`.
5. Click on `Save Application`.
6. Copy the `Application ID` and `Secret` from Gitlab and paste it in Dokploy `Gitlab` Modal section.
7. (Optional) If you want to use Groups, go to `https://gitlab.com/dashboard/groups` enter the group name you
want to connect, and look at the URL in the address bar, it will be something like this
`https://gitlab.com/dokploy-panel/frontend` you can use Nested Groups and SubGroups and copy the `dokploy-panel/frontend` from Gitlab and paste
it in Dokploy `Gitlab` Modal section.
8. Click on `Continue`.
9. Go Back to Dokploy and click on `Install` button.
10. Click on `Authorize`.
11. You will be redirected to the `Git` section of Dokploy.
12. Now you can use the repositories from your Gitlab Account in `Applications` or `Docker Compose` services.
<Callout type='warn'>
Dokploy doesn't support Gitlab Automatic deployments on each push you make to your repository.
</Callout>
## Setup Automatic Deployments
You can configure automatic deployments in Dokploy for the Following Services:
1. **Applications**
2. **Docker Compose**
The steps are the same for both services.
1. Go to either `Applications` or `Docker Compose` and go to `Deployments` Tab.
2. Copy the `Webhook URL`.
3. Go to your Gitlab Account and select the repository.
4. In the left menu, select `Settings` and then `Webhooks`.
5. Click on `Add Webhook`.
6. Set the `URL` to the one you copied in the previous step.
7. In the Trigger section, select `Push Events`.
8. Click on `Add Webhook`.
9. Click on `Save`.
10. Now you have automatic deployments enabled for the selected repository.
## Clarification on Automatic Deployments
By default, Dokploy will automatically deploy your application on the Branch you have selected.
eg. Let's suppose you have a `application` in this way:
Repository: `my-app`
Branch: `feature`
If you try to make a push on another branch eg. `main`, Dokploy will not automatically deploy your application, because
your application have selected `feature` as the Branch.
<Callout>
In the case you want to have multiple applications in the same repository, eg. (development, staging, production), you can create 3 `Applications` in Dokploy
and select the branch in each of them.
This is very usefull if you want to have multiple environments for the same application.
</Callout>

View File

@@ -0,0 +1,25 @@
---
title: Discord
description: 'Configure discord notifications for your applications.'
---
Discord notifications are a great way to stay up to date with important events in your Dokploy panel. You can choose to receive notifications for specific events or all events.
## Discord Notifications
For start receiving discord notifications, you need to fill the form with the following details:
- **Name**: Enter any name you want.
- **Webhook URL**: Enter the webhook URL. eg. `https://discord.com/api/webhooks/000000000000000/00000000-0000-0000-0000-000000000000`
To Setup the Discord notifications, follow these steps:
1. Go to Discord, and search your Discord server.
2. Go to `Server Settings` and click on `Integrations`.
3. Click on `Create a Webhook`.
4. Set a name for your webhook, eg. `dokploy_webhook`.
5. Click on the `Webhook` you've created and click on copy the `Webhook URL`.
6. Go to Dokploy `Notifications` and select `Discord` as the notification provider.
7. Use the `Webhook URL` you copied in the previous step.
8. Click on `Test` to make sure everything is working.
9. Click on `Create` to save the notification.

View File

@@ -0,0 +1,22 @@
---
title: Email
description: 'Configure email notifications for your applications.'
---
Email notifications are a great way to stay up to date with important events in your Dokploy panel. You can choose to receive notifications for specific events or all events.
## Email Notifications
For start receiving email notifications, you need to fill the form with the following details:
1. **Name**: Enter any name you want.
2. **SMPT Server**: Enter the SMTP server address. eg. `smtp.gmail.com`
3. **SMTP Port**: Enter the SMTP server port. eg. `587`
4. **SMTP Username**: Enter the SMTP server username. eg. `your-email@gmail.com`
5. **SMTP Password**: Enter the SMTP server password.
6. **From Address** Enter the email address that will be used as the sender.
7. **To Address** Enter the email address that will be used as the recipient, you can add multiple addresses.

View File

@@ -0,0 +1,22 @@
---
title: Overview
description: 'Configure general notifications for your applications and services.'
---
import { Callout } from 'fumadocs-ui/components/callout';
Dokploy offer multiples notifications options to notify about some events.
1. **App Deploy**: Notify when a new version of your application is deployed.
2. **App Deploy Error**: Notify when a new version of your application fails to deploy.
3. **Docker Cleanup**: Notify when a Docker cleanup is triggered.
4. **Dokploy Restart**: Notify when Dokploy Server restarts.
5. **Database Backup**: Notify when a new database backup is created(Success or Error).
## Providers:
1. **Slack**: Slack is a platform for team communication and collaboration.
2. **Telegram**: Telegram is a messaging platform that allows users to send and receive messages.
3. **Discord**: Discord is generally used for communication between users in a chat or voice channel.
4. **Email**: Email is a popular method for sending messages to a group of recipients.

View File

@@ -0,0 +1,27 @@
---
title: Slack
description: 'Configure slack notifications for your applications.'
---
Slack notifications are a great way to stay up to date with important events in your Dokploy panel. You can choose to receive notifications for specific events or all events.
## Slack Notifications
For start receiving slack notifications, you need to fill the form with the following details:
- **Name**: Enter any name you want.
- **Webhook URL**: Enter the webhook URL. eg. `https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX`
- **Channel**: Enter the channel name that you want to send the notifications to.
To Setup the slack notifications, follow these steps:
1. Go to `https://dokploy.slack.com/marketplace/A0F7XDUAZ-webhooks-entrantes` and click on `Add To Slack`.
2. Select the channel that you want to send the notifications to.
3. Click on `Add webhook to channel`.
4. Copy the `Webhook URL`.
5. Go to Dokploy `Notifications` and select `Slack` as the notification provider.
6. Use the `Webhook URL` you copied in the previous step.
7. In Channel section, select the channel that you want to send the notifications to.
7. Click on `Create` to save the notification.

View File

@@ -0,0 +1,28 @@
---
title: Telegram
description: 'Configure telegram notifications for your applications.'
---
Telegram notifications are a great way to stay up to date with important events in your Dokploy panel. You can choose to receive notifications for specific events or all events.
## Telegram Notifications
For start receiving telegram notifications, you need to fill the form with the following details:
- **Name**: Enter any name you want.
- **Bot Token**: Enter the bot token. eg. `123456789:ABCdefGHIjklMNOPqrstUVWXYZ`
- **Chat ID**: Enter the chat ID. eg. `123456789`
To Setup the telegram notifications, follow these steps:
1. Go to `https://telegram.me/botfather` and click on `Start Bot`.
2. Type `/newbot` and click on `Start`.
3. Set a name for your bot, eg. `dokploy_bot` make sure the name ends with `_bot`.
4. Copy the `Bot Token` and paste it in Dokploy `Telegram` Modal section.
5. Now you need to get the Chat ID, or create a new Channel
6. Search this bot in the search bar `@userinfobot`.
7. Type `/start` and it will return the chat ID.
8. Copy the `Chat ID` and paste it in Dokploy `Telegram` Modal section.
9. Click on test to make sure everything is working.
10. Click on `Create` to save the notification.

View File

@@ -0,0 +1,30 @@
---
title: Actions
description: 'Manage S3 destinations.'
---
import { Callout } from 'fumadocs-ui/components/callout';
The S3 Destinations section are essential for backing up your databases.
## Actions:
1. **Create**: Create a new S3 destination.
2. **Delete**: Delete a S3 destination.
3. **Edit**: Edit a S3 destination.
4. **Test**: Test a S3 destination.
### Create
In order to create a new S3 Bucket, you need to fill the form.
- **Name**: This could be anything you want, it will be the name.
- **Access Key**: This is the access key that you will use to access your bucket.
- **Secret Key**: This is the secret key that you will use to access your bucket.
- **Bucket**: This is the bucket that you will use to access your bucket.
- **Region**: This is the region that you will use to access your bucket.
- **Endpoint**: This is the endpoint that you will use to access your bucket.
<Callout type='info'>
There is a Button `Test` that will test the connection to your bucket, if it is correct it will show you a success message.
</Callout>

View File

@@ -0,0 +1,63 @@
---
title: AWS S3
description: 'Configure S3 buckets for backup storage. This includes setting up access keys, secret keys, bucket names, regions, and endpoints.'
---
import { Callout } from 'fumadocs-ui/components/callout';
AWS provides a simple and cost-effective way to store and retrieve data. It is a cloud-based service that allows you to store and retrieve data from anywhere in the world. This is a great option for storing backups, as it is easy to set up and manage.
1. Create a new bucket and set any name you want.
2. Search for `IAM` in the search bar.
3. Click on `Policies` in the left menu.
4. Click on `Create Policy`.
5. Select `JSON` and paste the following policy:
Make sure to replace the bucket name with your bucket name.
```json
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowListBucket",
"Effect": "Allow",
"Action": "s3:ListBucket",
"Resource": "arn:aws:s3:::bucket-name"
},
{
"Sid": "AllowBucketObjectActions",
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:PutObject",
"s3:DeleteObject"
],
// Make sure to set the name of your bucket
"Resource": "arn:aws:s3:::bucket-name/*"
}
]
}
```
6. Click on `Review Policy`.
7. Assign a name to the policy.
8. Click on `Create Policy`.
9. Click on User Group and assign a Name.
10. Click on `Add User to Group`.
11. Add the user you want to assign to the group.
12. In the `Attached Policies` section, filter by type `Customer Managed` and select the policy you created.
13. Click on `Attach Policy`.
14. Go to `Users` and select the user you've assigned to the group.
15. Go to Security Credentials.
16. Click on `Create Access Key`.
17. Select `Programmatic Access`.
18. Click on `Create New Access Key`.
Now copy the following variables:
- `Access Key` -> `Access Key (Dokploy)` = eg. `AK2AV244NFLS5JTUZ554`
- `Secret Key` -> `Secret Key (Dokploy)` = eg. `I0GWCo9fSGOr7z6Lh+NvHmSsaE+62Vwk2ua2CEwR`
- `Bucket` -> `Bucket (Dokploy)` = eg. `dokploy-backups` use the name of the bucket you created.
- `Region` -> `Region (Dokploy)` = eg. `us-east-1, us-west-2, etc` it will depend on the region you are using.
- `Endpoint` -> `Endpoint (Dokploy) (Optional)` = eg. `https://<bucket-name>.s3.<region>.amazonaws.com` you will find this endpoint in the Bucket Card at the Home Page.
Test the connection and you should see a success message.

View File

@@ -0,0 +1,26 @@
---
title: Backblaze B2
description: 'Configure buckets from Backblaze B2 for backup storage. This includes setting up access keys, secret keys, bucket names, regions, and endpoints.'
---
Backblaze B2 is a cloud-based service that allows you to store and retrieve data from anywhere in the world. This is a great option for storing backups, as it is easy to set up and manage.
## Backblaze B2 Example Bucket
1. Create a new bucket and set any name you want.
2. Go to `Application Keys` and create a new key.
3. Set a Key Name.
4. Set the Allow Access to Bucket(s) to `All Buckets` or `Specific Buckets`.
4. Set type of access `Read & Write` Permission.
Now copy the following variables:
- `Access Key` -> `Access Key (Dokploy)` = eg. `002s6acf2639910000d000005`
- `Secret Key` -> `Secret Key (Dokploy)` = eg. `K00+rIsWqPMhmcgqcyOyb9bqby7pbpE`
- `Region` -> `Region (Dokploy)` = eg. `eu-central-003, us-east-005, us-west-002, us-west-001, us-west-004, etc` it will depend on the region you are using.
- `Endpoint` -> `Endpoint (Dokploy)` = eg. `https://s3.us-west-002.backblazeb2.com` you will find this endpoint in the Bucket Card at the Home Page.
- `Bucket` -> `Bucket (Dokploy)` = eg. `dokploy-backups` use the name of the bucket you created.
Test the connection and you should see a success message.

View File

@@ -0,0 +1,24 @@
---
title: Cloudflare R2
description: 'Configure R2 buckets for backup storage. This includes setting up access keys, secret keys, bucket names, regions, and endpoints.'
---
Cloudflare is a popular choice for hosting static assets, such as images, videos, and documents. It is a cloud-based service that allows you to store and retrieve data from anywhere in the world. This is a great option for storing backups, as it is easy to set up and manage.
1. Create a new bucket and any name you want.
2. Go to initial R2 Screen, and go to `Manager R2 API Tokens` and create a new token.
3. Set a Token Name
4. Set `Object Read & Write` Permission.
5. (Optional) Set Specify bucket, by default it will include all buckets.
6. Create the token.
Now copy the following variables:
- `Access Key` -> `Access Key (Dokploy)` = eg. `f3811c6d27415a9s6cv943b6743ad784`
- `Secret Key` -> `Secret Key (Dokploy)` = eg. `aa55ee40b4049e93b7252bf698408cc22a3c2856d2530s7c1cb7670e318f15e58`
- `Region` -> `Region (Dokploy)` = eg. `WNAM, ENAM, etc` it will depend on the region you are using.
- `Endpoint` -> `Endpoint (Dokploy)` = eg. `https://8ah554705io7842d54c499fbee1156c1c.r2.cloudflarestorage.com`
- `Bucket` -> `Bucket (Dokploy)` = eg. `dokploy-backups` use the name of the bucket you created.
Test the connection and you should see a success message.

View File

@@ -0,0 +1,26 @@
---
title: Permissions
description: 'Add permissions to your users to manage your applications and services.'
---
Manage user roles and permissions within Dokploy. Note that only one admin role is allowed per instance.
## Permissions
Dokploy offers multiple permissions to manage your users effectively:
- **Create Projects**: Allows the user to create new projects.
- **Create Services**: Allows the user to create new applications or databases.
- **Access Traefik Files Tab**: Allows the user to access the Traefik files tab.
- **Delete Projects**: Allows the user to delete projects.
- **Delete Services**: Allows the user to delete services.
- **Access Docker Tab**: Allows the user to access the Docker tab.
- **Access API/CLI**: Allows the user to access the API/CLI, including the Swagger route.
- **Access to Git Providers**: Allows the user to access the Git Providers.
- **Access to SSH Keys**: Allows the user to access the SSH Keys.
You can also grant permissions to specific users for accessing particular projects or services.
### Project Permissions
Based on your projects and services, you can assign permissions to specific users to give them access to particular projects or services.

View File

@@ -0,0 +1,173 @@
---
title: Advanced
description: Learn how to use advanced features in your application.
---
This section is designed for experienced users who need to manage complex configurations and orchestration settings in Dokploy. Here, you can execute custom commands, manage cluster replicas, select Docker registries, and configure Docker Swarm settings.
### Run Command
- **Purpose**: Allows users to execute custom shell commands directly within the container.
- **Usage**: Enter the command you need to run in the provided field and click 'Save' to execute it within the container environment. This tool is particularly useful for debugging or specific administrative tasks.
### Cluster Settings
- **Purpose**: Manages the scaling and distribution of the application across multiple servers or nodes.
- **Replicas**: Set the number of instances of your application that should be running.
- **Registry Selection**: Choose the Docker registry from which your container images will be pulled. This is crucial for ensuring that the correct images are used during deployment.
#### Important Note
Always click 'Redeploy' after modifying the cluster settings to apply the changes.
### Swarm Settings
Swarm settings allow for detailed configuration of how containers are orchestrated within the Docker Swarm.
#### Health Check
- **Purpose**: Ensures that containers are running smoothly and restarts them if they fail.
- **Configuration**: Specify parameters like test commands, intervals, timeouts, start periods, and retries.
#### Restart Policy
Defines how containers should be handled if they exit or fail, the configuration is as follows:
- **Condition**: Specifies under what condition a restart should occur.
- **Delay**: Sets the time delay between restarts.
- **Max Attempts**: Limits the number of restart attempts.
- **Window**: Defines the time window used to evaluate the restart policy.
#### Update Config
Manages the deployment and update process of services in the swarm, the configuration is as follows:
- **Parallelism**: Number of containers to update simultaneously.
- **Delay**: Time between updates.
- **Failure Action**: Action to take if an update fails.
- **Monitor**: Duration to monitor a container after an update.
- **Max Failure Ratio**: The fraction of containers that are allowed to fail before the update is considered a failure.
- **Order**: The order in which containers are stopped and started during an update.
#### Placement
Controls where containers are placed within the swarm based on specific rules and preferences, the configuration is as follows:
- **Constraints**: Conditions that must be met for a container to be placed on a node.
- **Preferences**: Preferences for placing containers across nodes to spread load evenly.
### Rollback Config
Manages the rollback process for services when updates fail, the configuration is as follows:
- **Parallelism**: Number of containers to rollback simultaneously.
- **Delay**: Time between rollbacks.
- **FailureAction**: Action to take if a rollback fails.
- **Monitor**: Duration to monitor a container after a rollback.
- **MaxFailureRatio**: The fraction of containers that are allowed to fail before the rollback is considered a failure.
- **Order**: The order in which containers are stopped and restarted during a rollback.
### Mode
Defines how services are replicated within the swarm, the configuration is as follows:
- **Replicated**: Services are replicated across nodes as specified.
- **Replicas**: Number of replicas per service.
- **Global**: A single instance of the service runs on every node.
- **ReplicatedJob**: Runs a job in a replicated manner.
- **MaxConcurrent**: Maximum number of jobs running concurrently.
- **TotalCompletions**: Total number of times the jobs need to complete.
### Network
Configures network settings for the services, the configuration is as follows:
- **Target**: Specifies the network name.
- **Aliases**: Provides aliases for the network.
- **DriverOpts**: Network driver options like MTU size and host binding.
### Labels
Assigns metadata to containers to help identify and organize them, the configuration is as follows:
- **Labels**: Key-value pairs assigned to the service. For example:
1. `com.example.app.name`: "my-app"
2. `com.example.app.version`: "1.0.0"
### Note
Modifying Swarm Settings requires careful consideration as incorrect configurations can disrupt the entire container orchestration. Always ensure you understand the implications of the changes you are making.
## Resources
Manage the memory and CPU resources allocated to your applications or databases.
- **Memory Reservation**: The minimum amount of memory guaranteed to the application.
- **Memory Limit**: The maximum amount of memory the application can use.
- **CPU Limit**: The maximum number of CPU units that the application can utilize.
- **CPU Reservation**: The minimum number of CPU units reserved for the application.
### Volumes/Mounts
Configure persistent storage for your application to ensure data remains intact across container restarts and deployments.
**Bind Mount**: Maps a host file or directory to a container file or directory. Typically used for specific configurations or databases.
1. **Host Path**: Path on the host.
2. **Mount Path**: Path in the container.
**Volume Mount**: Uses Docker-managed volumes that are easier to back up and migrate than bind mounts.
1. **Volume Name**: Name of the Docker-managed volume.
2. **Mount Path**: Path in the container where the volume is mounted.
**File Mount**: Specifically for single files, useful for configuration files.
1. **Content**: The content to store in the file.
2. **Mount Path**: Path in the container where the file is placed.
File mounts are a dokploy features, this create a file in a folder called `files` inside your project, so it recreates every single time you deploy your project.
<ImageZoom src="/assets/file-mount-configuration.webp" width={800} height={630} className="rounded-lg"/>
<ImageZoom src="/assets/file-mount.png" width={800} height={630} className="rounded-lg"/>
### Redirects
Redirect requests to your application to another URL based on specified rules, enhancing navigational efficiency and SEO.
- **Regex**: Enter a regular expression to match the URLs that need redirecting.
- **Replacement**: Specify the target URL where traffic should be redirected.
- **Permanent**: Toggle this option to apply a permanent (HTTP 301) redirection, indicating to browsers and search engines that the page has moved permanently.
#### Example
To redirect all traffic from "http://localhost" to "http://mydomain", set the Regex as `http://localhost/(.*)` and the Replacement as `http://mydomain/$1`.
### Security
Add basic authentication to your application to restrict access.
- **Username**: Enter a username.
- **Password**: Enter a password.
#### Important Note
Adding basic authentication will prompt users for a username and password before allowing access to the application. Use this for environments where an additional layer of security is required.
### Ports
Expose your application to the internet by configuring network ports, allowing external access.
- **Published Port**: The port number on the host that will route traffic to your application.
- **Target Port**: The port number inside the container that the application uses.
- **Protocol**: Choose between TCP and UDP based on your application's requirements.
#### Important Note
Ensure that the published port does not conflict with other services on the host to avoid port binding errors, also this port is used mostly for accesing the application from the outside, eg your-ip:port, this is not for accessing the application trought a domain.
### Traefik
Provides a dynamic and robust method to manage HTTP traffic to your services, including load balancing and SSL termination.
- **Rules**: Define complex routing, load balancing, and security configurations using Traefik's powerful rule-based configuration system.

View File

@@ -0,0 +1,86 @@
---
title: Auto Deploy
description: "Learn how to automatically deploy your application to Dokploy."
---
Automatically deploying your application to Dokploy can be achieved through two primary methods: using Webhooks or the Dokploy API. Each method supports various platforms and provides a streamlined deployment process.
## Github
For Github, we provide autodeploy without any configuration. This will automatically deploy your application whenever you push to your repository.
## Webhook URL
Webhooks allow you to automatically deploy your application whenever changes are made in your source repository.
- GitHub
- GitLab
- Bitbucket
- Gitea
- DockerHub
### Configuration Steps
1. **Enable Auto Deploy**: Toggle the 'Auto Deploy' button found in the general tab of your application settings in Dokploy.
2. **Obtain Webhook URL**: Locate the Webhook URL from the deployment logs.
<ImageZoom
src="/assets/webhook-url.png"
alt="Webhook URL"
width={1000}
height={500}
/>
3. **Configure Your Repository**:
- Navigate to your repository settings on your chosen platform.
- Add the webhook URL provided by Dokploy.
- Ensure the settings match the configuration necessary for triggering the webhook.
<ImageZoom
src="/assets/webhook-github.png"
alt="Webhook URL"
width={1000}
height={500}
/>
#### Important Notes
- **Branch Matching**: When using Git-based providers (GitHub, GitLab, etc.), ensure that the branch configured in Dokploy matches the branch you intend to push to. Misalignment will result in a "Branch Not Match" error.
- **Docker Tags**: For deployments using DockerHub, ensure the tag pushed matches the one specified in Dokploy.
- The steps are the same for all the providers.
### API Method
Deploy your application programmatically using the Dokploy API from anywhere.
### Steps to Deploy Using API
Steps:
1. **Generate a Token**: Create an API token in your profile settings on Dokploy.
2. **Retrieve Application ID**:
```http
curl -X 'GET' \
'https://your-domain/api/project.all' \
-H 'accept: application/json'
-H 'Authorization: Bearer <token>'
```
This command lists all projects and services. Identify the applicationId for the application you wish to deploy.
3. **Trigger Deployment**:
```http
curl -X 'POST' \
'https://your-domain/api/application.deploy' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <token>' \
-d '{
"applicationId": "string"
}'
```
This API method allows for flexible, scriptable deployment options, suitable for automated systems or situations where direct repository integration is not feasible.
In this way you can deploy your application from anywhere, you can use the webhook URL or the API.

View File

@@ -0,0 +1,34 @@
---
title: Build Type
description: "Learn about the different build types available in Dokploy, including Nixpacks, Dockerfile, and Buildpack options."
---
import { Callout } from 'fumadocs-ui/components/callout';
Dokploy offers three distinct build types for deploying applications, each suited to different development needs and preferences.
### Nixpacks
This is the default build type in Dokploy. When you select Nixpacks, Dokploy builds your application as a Nixpack, which is optimized for ease of use and efficiency.
You can read more about Nixpacks [here](https://nixpacks.com/).
### Dockerfile
If your project includes a Dockerfile, you can specify its path. Dokploy will use this Dockerfile to build your application directly, giving you full control over the build environment and dependencies.
### Buildpack
Dokploy supports two types of buildpacks:
- **Heroku**: Adapted from Heroku's popular cloud platform, these buildpacks are designed for compatibility and ease of migration.
- **Paketo**: Provides cloud-native buildpacks that leverage modern standards and practices for building applications.
<Callout>
**Tip:** We recommend using the `Nixpacks` build type as it is the most
straightforward and commonly used option for most applications.
</Callout>
By choosing the appropriate build type, you can tailor the deployment process to best fit your application's requirements and your operational preferences.

View File

@@ -0,0 +1,48 @@
---
title: Domains
description: Domains
---
This section outlines how to configure domains for your applications in Dokploy, ensuring that your applications are accessible via custom URLs.
### Add Domain
Associate custom domains with your application to make it accessible over the internet.
- **Host**: The domain name that you want to link to your application (e.g., `api.dokploy.com`).
- **Path**: The specific path within the domain where the application should be accessible.
- **Container Port**: The port on the container that the domain should route to.
- **Certificate**: Select whether to secure the domain with SSL/TLS certificates. Dokploy supports automatic provisioning of SSL certificates via Let's Encrypt.
- **HTTPS**: Toggle this on to enable HTTPS for your domain, providing secure, encrypted connections.
#### Steps to Add a Domain
1. Click 'Add Domain'.
2. Fill in the domain details, including host, path, and port.
3. Choose to enable HTTPS and select a certificate option.
4. Click 'Create' to apply the settings.
### Generate Domain
Quickly set up a domain for development or testing purposes without needing to register a domain.
- **Generate TraefikMe Domain**: Creates a free domain provided by TraefikMe. This is ideal for testing or temporary access before a proper domain is purchased.
#### Steps to Generate a Domain
1. Click 'Generate Domain'.
2. Choose 'Generate TraefikMe Domain' for a quick setup.
3. A domain will be automatically assigned to your application.
### Managing Domains
- **View and Modify**: Existing domains are listed with options to edit settings or remove them.
- **Details**: Each domain entry shows the configured host, path, port, and whether HTTPS is enabled.
### Note
Proper domain configuration is crucial for the accessibility and security of your application. Always verify domain settings and ensure that DNS configurations are properly set up to point to the correct IP addresses. Enable HTTPS to enhance security and trust, especially for production environments.
### Important Clarification on Container Ports
The "Container Port" specified in the domain settings is exclusively for routing traffic to the correct application container through Traefik, and does not expose the port directly to the internet. This is fundamentally different from the port settings in the "Advanced -> Ports" section, which are used to directly expose application ports. The container port in the domain settings ensures that Traefik can internally direct traffic to the specified port within the container based on the domain configuration.

View File

@@ -0,0 +1,58 @@
---
title: Applications
description: "Explore the multiple deployment methods available in Dokploy, including GitHub, Git, Docker, and automated deployments via webhooks."
---
Applications in Dokploy are treated as a single service, entity or container, making it easy and intuitive for users to work with each application in its own workspace.
We offer multiple functionalities that you can use to manage your applications, such as:
## General
Configure the source of your code, the way your application is built, and also manage actions like deploying, updating, and deleting your application, and stopping it.
## Environment
If you need to assign environment variables to your application, you can do so here.
In case you need to use a multiline variable, you can wrap it in double quotes just like this `'"here_is_my_private_key"'`.
## Monitoring
Four graphs will be displayed for the use of memory, CPU, disk, and network. Note that the information is only updated if you are viewing the current page, otherwise it will not be updated.
## Logs
If you want to see any important logs from your application that is running, you can do so here and determine if your application is displaying any errors or not.
## Deployments
You can view the last 10 deployments of your application. When you deploy your application in real time, a new deployment record will be created and it will gradually show you how your application is being built.
We also offer a button to cancel deployments that are in queue. Note that those in progress cannot be canceled.
We provide a webhook so that you can trigger your own deployments by pushing to your GitHub, Gitea, GitLab, Bitbucket, DockerHub repository.
## Domains
This is where you will assign your domain so that your application can be accessed from the internet.
There are two ways to assign a domain:
1. Create a custom domain.
2. Use a generated domain, we use traefik.me to generate free domains.
## Advanced Settings
This section provides advanced configuration options for experienced users. It includes tools for custom commands within the container, managing Docker Swarm settings, and adjusting cluster settings such as replicas and registry selection. These tools are typically not required for standard application deployment and are intended for complex management and troubleshooting tasks.
- **Run Command**: Execute custom commands directly in the container, after the application has been build & running.
- **Cluster Settings**: Configure the number of replicas and select the Docker registry for your deployment to manage how your application scales and where it pulls images from.
- **Swarm Settings**: Access additional Docker Swarm configurations for detailed orchestration and scaling across multiple nodes.
- **Resources**: Adjust the CPU and memory allocation for your application.
- **Volumes**: To ensure data persistence across deployments, configure storage volumes for your application, you can create Volumes, Binds, File Mounts.
- **Ports**: Expose your application to the internet by configuring network ports.
- **Traefik**: Modify Traefik settings to manage HTTP request handling for your application.
### Note
Adjust these settings carefully as incorrect configurations can significantly impact your applications functionality and availability.

View File

@@ -0,0 +1,58 @@
---
title: Providers
description: Learn how to use providers in your application.
---
Dokploy offers several deployment methods, streamlining the process whether you're utilizing GitHub, any Git provider, Docker, or automated deployments.
- GitHub
- Gitlab
- Bitbucket
- Git (Any Git Provider)
- Docker
- Drop(Drag and Drop .zip)
## GitHub, Gitlab, Bitbucket
Go to [Git Sources](/docs/core/git-sources/github) and select the provider you want to use.
## Git
For deployments from any Git repository, whether public or private, you can use either SSH or HTTPS:
### Public Repositories (HTTPS)
1. Enter the repository URL in `HTTPS URL`.
2. Type the branch name.
3. Click on `Save`.
### Private Repositories
For private repositories, is required to first create an SSH Key.
1. Go to [SSH Keys](/docs/core/ssh-keys/overview) and click on `Create SSH Key`.
2. Click on `Generate RSA SSH Key` and copy the `Public Key`.
<ImageZoom
src="/assets/dokploy-ssh-key.png"
width={800}
height={630}
className="rounded-lg"
/>
You can then copy the SSH key and paste it into the settings of your account.
<ImageZoom
src="/assets/private-repository.png"
width={800}
height={630}
className="rounded-lg"
/>
This enables you to pull repositories from your private repository, a method consistent across nearly all providers.
## Docker
For Docker deployments:
- Provide a Docker image. For private repositories, enter the username and password.

View File

@@ -0,0 +1,29 @@
---
title: 'Architecture of Dokploy'
description: 'Overview of the core architecture components of Dokploy.'
---
Understanding the architecture of Dokploy is crucial for both deploying and scaling applications. Below is a diagram illustrating the core components:
<ImageZoom src="/assets/architecture.png" alt="Architecture Diagram" width={1000} height={600} className="rounded-lg"/>
## Installation Process
When Dokploy is installed, it automatically sets up the following components:
1. **Next.js Application**: Serves as the frontend interface. Utilizing Next.js allows for an integrated server-side rendering experience, streamlining the UI and backend into a single cohesive application.
2. **PostgreSQL Database**: Acts as the primary database for Dokploy, chosen for its robustness and widespread adoption. It stores all the configuration and operational data.
3. **Redis Database**: Employed for managing deployment queues. This ensures that multiple deployments do not trigger simultaneously, which could lead to high server load and potential freezing.
4. **Traefik**: Used as a reverse proxy and load balancer. Traefik facilitates dynamic routing and service discovery which simplifies the configuration process by allowing declarative setup through the UI.
## Purpose and Functionality
Each component in the Dokploy architecture plays a vital role:
- **Next.js**: Provides a scalable and easy-to-manage frontend framework, encapsulating both server and client-side logic in one platform. This simplifies deployment and development workflows.
- **PostgreSQL**: Delivers reliable and secure data storage capabilities. Its use within Dokploy ensures consistency and high performance for all database operations.
- **Redis**: Handles concurrency and job scheduling. By using Redis, Dokploy can efficiently manage deployment tasks, avoiding collisions and server overload during simultaneous operations.
- **Traefik**: Enhances Docker integration. Its ability to read from and write to Docker configurations declaratively allows Dokploy to automate and streamline network traffic management and service discovery.
This structure ensures that Dokploy is not only efficient in deploying applications but also robust in handling traffic and data at scale.

View File

@@ -0,0 +1,21 @@
---
title: Certificates
description: 'Configure your certificates to secure your applications.'
---
import { Callout } from 'fumadocs-ui/components/callout';
Dokploy offers a UI to manage your certificates.
We expose a UI to create and delete the certificates, we ask two fields:
1. **Name**: Enter a name for the certificate (this can be anything you choose).
2. **Certificate Data**: Provide the certificate details.
3. **Private Key**: Enter the private key.
4. **(Optional) Server**: If you want to create a certificate for a server, you can select it here.
<Callout type='warn'>
This action will create the files, but that doesn't mean it will work automatically. You need to adjust the Traefik configuration to use it, this configuration will make
to traefik can recognize the certificate.
</Callout>

View File

@@ -0,0 +1,26 @@
---
title: Backups
description: "Learn how to schedule and manage backups for your databases in Dokploy, with options for storage in S3 buckets."
---
Dokploy provides an integrated solution for backing up your databases, ensuring data safety and recovery capabilities.
## Backing Up Your Database
To configure database backups, navigate to the `Backup` tab within your Dokploy dashboard. Heres what youll need to set up:
- **Select Destination S3 Bucket**: Specify where your backups will be stored. Buckets can be configured in the `/dashboard/settings/destinations` route.
- **Database Name**: Enter the name of the database you want to backup.
- **Schedule Cron**: Define the schedule for your backups using cron syntax.
- **Prefix**: Choose a prefix under which backups will be stored in your bucket.
- **Enabled**: Toggle whether backups are active. The default setting is enabled.
### Testing Your Backup Configuration
To ensure your backup settings are correctly configured:
1. Click the `Test` button.
2. This will initiate a test backup to the S3 bucket you selected.
3. Check the bucket to see the result of the test backup.
This feature provides peace of mind by verifying that your backup process is set up correctly before relying on it for operational backups.

View File

@@ -0,0 +1,33 @@
---
title: Connection
description: "Learn how to connect to your database using Dokploy."
---
This section explains how to configure database access for applications in Dokploy, including both internal connections within your network and external connections accessible over the internet.
### Internal Credentials
Used for connecting to the database from within the same network, without exposing the database to the internet.
- **User**: Username for the database access.
- **Password**: Secure password for database access.
- **Database Name**: The name of the database to connect to.
- **Internal Host**: The hostname or internal identifier for the database within the network.
- **Internal Port (Container)**: The port used within the container to connect to the database.
- **Internal Connection URL**: The full connection string used internally to connect to the database.
### External Credentials
Enables the database to be reachable from the internet, necessary for remote management or external applications.
- **External Port (Internet)**: Assign a port that is not currently used by another service to expose the database externally.
#### Steps to Configure External Access
1. Ensure the external port is available and not in conflict with other services.
2. Enter the external port you wish to use to expose your database.
3. The system will automatically generate an external connection URL, which can be used to access the database from any database management tool over the internet, like phpMyAdmin, MySQL Workbench, PgAdmin, etc.
### Important Note
For security reasons, internal credentials should be used for applications running within the same network or environment to prevent unauthorized access. External credentials should only be used when necessary and with proper security measures in place, such as VPNs or IP whitelisting.

View File

@@ -0,0 +1,51 @@
---
title: Databases
description: "Discover how to create and backup databases easily with Dokploy, supporting a variety of database systems."
---
Dokploy simplifies the process of creating and managing databases, offering robust options for both setup and backups.
## Database Support
Dokploy currently supports a range of popular database systems, ensuring compatibility and flexibility for your projects:
- **Postgres**: Robust, SQL-compliant and highly reliable.
- **MySQL**: Widely used relational database known for its performance and flexibility.
- **MariaDB**: A fork of MySQL with additional features and improved performance.
- **MongoDB**: A NoSQL database known for its high scalability and flexibility.
- **Redis**: An in-memory key-value store often used as a database, cache, and message broker.
We offer multiple functionalities that you can use to manage your databases, such as:
## General
Actions like deploying, updating, and deleting your database, and stopping it.
## Environment
If you need to assign environment variables to your application, you can do so here.
In case you need to use a multiline variable, you can wrap it in double quotes just like this `'"here_is_my_private_key"'`.
## Monitoring
Four graphs will be displayed for the use of memory, CPU, disk, and network. Note that the information is only updated if you are viewing the current page, otherwise it will not be updated.
## Backups
We offer automated backups for your databases, ensuring that you can recover your data quickly and easily in case of any issues, you can setup a S3 Destinations in settings to store your backups.
## Logs
If you want to see any important logs from your application that is running, you can do so here and determine if your application is displaying any errors or not.
## Advanced
This section provides advanced configuration options for experienced users. It includes tools for custom commands within the container, managing Docker Swarm settings, and adjusting cluster settings such as replicas and registry selection. These tools are typically not required for standard application deployment and are intended for complex management and troubleshooting tasks.
- **Custom Docker Image**: You can change the Docker image used to run your database.
- **Run Command**: Execute custom commands directly in the container for advanced management or troubleshooting.
- **Volumes**: To ensure data persistence across deployments, configure storage volumes for your application.
- **Resources**: Adjust the CPU and memory allocation for your application.

View File

@@ -0,0 +1,84 @@
---
title: Auto-deploy
description: How to auto-deploy your docker-compose application with Dokploy
---
Automatically deploying your docker-compose application to Dokploy can be achieved through two primary methods: using Webhooks or the Dokploy API. Each method supports various platforms and provides a streamlined deployment process.
## Github
For Github, we provide autodeploy without any configuration. This will automatically deploy your application whenever you push to your repository.
## Webhook URL
Webhooks allow you to automatically deploy your docker-compose application whenever changes are made in your source repository.
- GitHub
- GitLab
- Bitbucket
- Gitea
### Configuration Steps
1. **Enable Auto Deploy**: Toggle the 'Auto Deploy' button found in the general tab of your application settings in Dokploy.
2. **Obtain Webhook URL**: Locate the Webhook URL from the deployment logs.
<ImageZoom
src="/assets/webhook-url-compose.png"
alt="Webhook URL"
width={1000}
height={500}
/>
3. **Configure Your Repository**:
- Navigate to your repository settings on your chosen platform.
- Add the webhook URL provided by Dokploy.
- Ensure the settings match the configuration necessary for triggering the webhook.
<ImageZoom
src="/assets/webhook-github.png"
alt="Webhook URL"
width={1000}
height={500}
/>
#### Important Notes
- **Branch Matching**: When using Git-based providers (GitHub, GitLab, etc.), ensure that the branch configured in Dokploy matches the branch you intend to push to. Misalignment will result in a "Branch Not Match" error.
- The steps are the same for all the providers.
## API Method
Deploy your application programmatically using the Dokploy API from anywhere.
### Steps to Deploy Using API
Steps:
1. **Generate a Token**: Create an API token in your profile settings on Dokploy.
2. **Retrieve Compose ID**:
```http
curl -X 'GET' \
'https://your-domain/api/project.all' \
-H 'accept: application/json'
-H 'Authorization: Bearer <token>'
```
This command lists all projects and services. Identify the composeId for the compose you wish to deploy.
3. **Trigger Deployment**:
```http
curl -X 'POST' \
'https://your-domain/api/compose.deploy' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <token>' \
-d '{
"composeId": "string"
}'
```
This API method allows for flexible, scriptable deployment options, suitable for automated systems or situations where direct repository integration is not feasible.
In this way you can deploy your application from anywhere, you can use the webhook URL or the API.

View File

@@ -0,0 +1,181 @@
---
title: Domains
description: Configure domains for your Docker Compose application.
---
When using Docker Compose, adding a domain to a service is a straightforward process. This guide will walk you through the necessary steps to configure domains for your application.
Key Steps:
1. Add the service to the `dokploy-network`.
2. Use Traefik labels to configure routing.
import { Callout } from "fumadocs-ui/components/callout";
<Callout title="Attention" type="info">
Since v0.7.0 Dokploy support domains natively. This means that you can
configure your domain directly in the Dokploy UI, without doing the rest of
the steps.
</Callout>
Example Scenario
Let's consider an application with three components: a frontend, a backend, and a database. We'll start with a basic Docker Compose file and then enhance it with domain configuration.
```yaml
version: "3.8"
services:
frontend:
build:
context: ./frontend
dockerfile: Dockerfile
volumes:
- ./frontend:/app
ports:
- "3000:3000"
depends_on:
- backend
backend:
build:
context: ./backend
dockerfile: Dockerfile
volumes:
- ./backend:/app
ports:
- "5000:5000"
environment:
- DATABASE_URL=postgres://postgres:password@database:5432/mydatabase
depends_on:
- database
database:
image: postgres:13
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: password
POSTGRES_DB: mydatabase
volumes:
- db-data:/var/lib/postgresql/data
volumes:
db-data:
```
## Step 1: Add the Network
First, we'll add the dokploy-network to our services:
```yaml
version: "3.8"
services:
frontend:
# ... (previous configuration)
networks:
- dokploy-network
backend:
# ... (previous configuration)
networks:
- dokploy-network
database:
# ... (previous configuration)
networks:
- dokploy-network
volumes:
db-data:
networks:
dokploy-network:
external: true
```
Step 2: Configuring Traefik Labels
Now, let's add Traefik labels to route domains to our services. We'll focus on the frontend and backend services:
```yaml
version: "3.8"
services:
frontend:
build:
context: ./frontend
dockerfile: Dockerfile
volumes:
- ./frontend:/app
expose:
- 3000
depends_on:
- backend
networks:
- dokploy-network
labels:
- traefik.enable=true
- traefik.http.routers.frontend-app.rule=Host(`frontend.dokploy.com`)
- traefik.http.routers.frontend-app.entrypoints=web
- traefik.http.services.frontend-app.loadbalancer.server.port=3000
backend:
build:
context: ./backend
dockerfile: Dockerfile
volumes:
- ./backend:/app
expose:
- 5000
environment:
- DATABASE_URL=postgres://postgres:password@database:5432/mydatabase
depends_on:
- database
networks:
- dokploy-network
labels:
- traefik.enable=true
- traefik.http.routers.backend-app.rule=Host(`backend.dokploy.com`)
- traefik.http.routers.backend-app.entrypoints=web
- traefik.http.services.backend-app.loadbalancer.server.port=5000
database:
# ... (same as before)
volumes:
db-data:
networks:
dokploy-network:
external: true
```
Understanding Traefik Labels
1. `traefik.enable=true` Enables Traefik routing for the service.
2. `traefik.http.routers.<UNIQUE-RULE>.rule=Host('your-domain.dokploy.com')` Specifies the domain for the service
3. `traefik.http.routers.<UNIQUE-RULE>.entrypoints=web` Sets the service to be accessible via HTTP.
4. `traefik.http.services.<UNIQUE-RULE>.loadbalancer.server.port=3000` Specifies the port your service is using internally.
**Note**: Replace `<UNIQUE-RULE>` with a unique identifier for each service (e.g., frontend-app, backend-app, etc.).
## Important Considerations
1. **Port Exposure**: Use `expose` instead of `ports` to expose ports to the host machine. This ensures that the ports are not exposed to the host machine.
2. **DNS Configuration**: Ensure you create `A` records pointing to your domain in your DNS Provider Settings.
3. **HTTPS**: For HTTPS, you can use Let's Encrypt or other SSL/TLS certificates.
## Deployment
With these configurations in place, you're now ready to deploy your application using Docker Compose. This setup should be sufficient to get your services up and running with custom domain routing through Traefik.
## SSL Certificates and Further Configuration
If you have questions about when to use Let's Encrypt or other SSL certificate options, you can find more detailed information in the following resources:
1. [Certificates](/docs/core/domain/certificates)
2. [Docker Compose Domain](/docs/core/domain/docker-compose-setup)
3. [Docker Compose Example](/docs/core/docker-compose/example)
If you have any further questions or need assistance, join our [Discord server](https://discord.com/invite/2tBnJ3jDJc) and we'll be happy to help.

View File

@@ -0,0 +1,110 @@
---
title: "Example"
description: "Learn how to use Docker Compose with Dokploy"
---
## Tutorial
In this tutorial, we will create a simple application using Docker Compose and route the traffic to an accessible domain.
### Steps
1. Create a new project.
2. Create a new service `Compose` and select the Compose Type `Docker Compose`.
3. Fork this repository: [Repo](https://github.com/Dokploy/docker-compose-test).
4. Select Provider type: GitHub or Git.
5. Select the repository: `Dokploy/docker-compose-test`.
6. Select the branch: `main`.
7. Set the Compose Path to `./docker-compose.yml` and save.
![Docker compose configuration](/assets/images/compose/setup.png)
### Updating Your `docker-compose.yml`
Add the following to your existing `docker-compose.yml` file:
1. Add the network `dokploy-network` to each service.
2. Add labels for Traefik to make the service accessible through the domain.
Example:
Let's modify the following compose file to make it work with Dokploy:
```yaml
version: "3"
services:
next-app:
build:
context: ./next-app
dockerfile: prod.Dockerfile
args:
ENV_VARIABLE: ${ENV_VARIABLE}
NEXT_PUBLIC_ENV_VARIABLE: ${NEXT_PUBLIC_ENV_VARIABLE}
restart: always
ports:
- 3000:3000
networks:
- my_network
networks:
my_network:
external: true
```
Updated version with dokploy-network and Traefik labels:
import { Callout } from 'fumadocs-ui/components/callout';
<Callout type="warn">
Don't set container_name property to the each service, it will cause issues with logs, metrics and other features
</Callout>
{/* :::danger
Don't set container_name property to the each service, it will cause issues with logs, metrics and other features
::: */}
```yaml
version: "3"
services:
next-app:
build:
context: ./next-app
dockerfile: prod.Dockerfile
args:
ENV_VARIABLE: ${ENV_VARIABLE}
NEXT_PUBLIC_ENV_VARIABLE: ${NEXT_PUBLIC_ENV_VARIABLE}
restart: always
ports:
- 3000
networks:
- dokploy-network
labels:
- "traefik.enable=true"
- "traefik.http.routers.<unique-name>.rule=Host(`your-domain.com`)"
- "traefik.http.routers.<unique-name>.entrypoints=websecure"
- "traefik.http.routers.<unique-name>.tls.certResolver=letsencrypt"
- "traefik.http.services.<unique-name>.loadbalancer.server.port=3000"
networks:
dokploy-network:
external: true
```
Make sure to point the A record to the domain you want to use for your service.
<ImageZoom src="/assets/images/compose/domain.png" width={800} height={630} alt='home og image' className="rounded-lg" />
Deploy the application by clicking on "deploy" and wait for the deployment to complete. Then give Traefik about 10 seconds to generate the certificates. You can then access the application through the domain you have set.
<ImageZoom src="/assets/images/compose/application.png" width={800} height={630} alt='home og image' className="rounded-lg" />
**Tips**:
1. Set unique names for each router: `traefik.http.routers.<unique-name>`
2. Set unique names for each service: `traefik.http.services.<unique-name>`
3. Ensure the network is linked to the `dokploy-network`
4. Set the entry point to websecure and the certificate resolver to letsencrypt to generate certificates.

View File

@@ -0,0 +1,76 @@
---
title: Docker Compose
description: "Learn how to use Docker Compose with Dokploy"
---
import { Callout } from "fumadocs-ui/components/callout";
Dokploy integrates with Docker Compose and Docker Stack to provide flexible deployment solutions. Whether you are developing locally or deploying at scale, Dokploy facilitates application management through these powerful Docker tools.
### Configuration Methods
Dokploy provides two methods for creating Docker Compose configurations:
- **Docker Compose**: Ideal for standard Docker Compose configurations.
- **Stack**: Geared towards orchestrating applications using Docker Swarm. Note that some Docker Compose features, such as `build`, are not available in this mode.
### General
Configure the source of your code, the way your application is built, and also manage actions like deploying, updating, and deleting your application, and stopping it.
### Enviroment
A code editor within Dokploy allows you to specify environment variables for your Docker Compose file. By default, Dokploy creates a `.env` file in the specified Docker Compose file path.
### Monitoring
Monitor each service individually within Dokploy. If your application consists of multiple services, each can be monitored separately to ensure optimal performance.
### Logs
Access detailed logs for each service through the Dokploy log viewer, which can help in troubleshooting and ensuring the stability of your services.
### Deployments
You can view the last 10 deployments of your application. When you deploy your application in real time, a new deployment record will be created and it will gradually show you how your application is being built.
We also offer a button to cancel deployments that are in queue. Note that those in progress cannot be canceled.
We provide a webhook so that you can trigger your own deployments by pushing to your GitHub, Gitea, GitLab, Bitbucket repository.
### Advanced
This section provides advanced configuration options for experienced users. It includes tools for custom commands within the container and volumes.
- **Command**: Dokploy has a defined command to run the Docker Compose file, ensuring complete control through the UI. However, you can append flags or options to the command.
- **Volumes**: To ensure data persistence across deployments, configure storage volumes for your application.
<ImageZoom
src="/assets/images/compose/overview.png"
width={800}
height={630}
quality={100}
priority
alt="home og image"
className="rounded-lg"
/>
<Callout title="Volumes">
Docker volumes are a way to persist data generated and used by Docker containers. They are particularly useful for maintaining data between container restarts or for sharing data among different containers.
To bind a volume to the host machine, you can use the following syntax in your docker-compose.yml file, but this way will clean up the volumes when a new deployment is made:
```yaml
volumes:
- "/folder:/path/in/container" ❌
```
It's recommended to use the ../files folder to ensure your data persists between deployments. For example:
```yaml
volumes:
- "../files/my-database:/var/lib/mysql" ✅
- "../files/my-configs:/etc/my-app/config" ✅
```
</Callout>

Some files were not shown because too many files have changed in this diff Show More