forked from Dokploy/dokploy
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
8857a20
commit be56ba0
Showing
412 changed files
with
60,777 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
DATABASE_URL="postgres://dokploy:amukds4wi9001583845717ad2@localhost:5432/dokploy" | ||
PORT=3000 | ||
NODE_ENV=development |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. | ||
|
||
# dependencies | ||
/node_modules | ||
/.pnp | ||
.pnp.js | ||
/redis-data | ||
traefik.yml | ||
|
||
# testing | ||
/coverage | ||
/dist | ||
/production-server | ||
# database | ||
/prisma/db.sqlite | ||
/prisma/db.sqlite-journal | ||
/logs | ||
|
||
# next.js | ||
/.next/ | ||
/out/ | ||
next-env.d.ts | ||
/dokploy | ||
/config | ||
|
||
# production | ||
/build | ||
|
||
# misc | ||
.DS_Store | ||
*.pem | ||
|
||
# debug | ||
npm-debug.log* | ||
yarn-debug.log* | ||
yarn-error.log* | ||
.pnpm-debug.log* | ||
|
||
# local env files | ||
# do not commit any .env files to git, except for the .env.example file. https://create.t3.gg/en/usage/env-variables#using-environment-variables | ||
.env | ||
.env*.local | ||
|
||
# vercel | ||
.vercel | ||
|
||
# typescript | ||
*.tsbuildinfo | ||
|
||
# otros | ||
/.data | ||
/.main | ||
|
||
*.lockb |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,137 @@ | ||
|
||
|
||
# Contributing | ||
|
||
Hey, thanks for your interest in contributing to Dokploy! We appreciate your help and taking your time to contribute. | ||
|
||
|
||
Before you start, please first discuss the feature/bug you want to add with the owners and comunity via github issues. | ||
|
||
We have a few guidelines to follow when contributing to this project: | ||
|
||
- [Commit Convention](#commit-convention) | ||
- [Setup](#setup) | ||
- [Development](#development) | ||
- [Build](#build) | ||
- [Pull Request](#pull-request) | ||
|
||
## Commit Convention | ||
|
||
Before you craete a Pull Request, please make sure your commit message follows the [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) specification. | ||
|
||
### Commit Message Format | ||
``` | ||
<type>[optional scope]: <description> | ||
[optional body] | ||
[optional footer(s)] | ||
``` | ||
|
||
#### Type | ||
Must be one of the following: | ||
|
||
* **feat**: A new feature | ||
* **fix**: A bug fix | ||
* **docs**: Documentation only changes | ||
* **style**: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc) | ||
* **refactor**: A code change that neither fixes a bug nor adds a feature | ||
* **perf**: A code change that improves performance | ||
* **test**: Adding missing tests or correcting existing tests | ||
* **build**: Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm) | ||
* **ci**: Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs) | ||
* **chore**: Other changes that don't modify `src` or `test` files | ||
* **revert**: Reverts a previous commit | ||
|
||
Example: | ||
``` | ||
feat: add new feature | ||
``` | ||
|
||
|
||
## Setup | ||
|
||
```bash | ||
git clone https://github.com/dokploy/dokploy.git | ||
cd dokploy | ||
npm install | ||
cp .env.example .env | ||
``` | ||
|
||
## Development | ||
|
||
Is required to have **Docker** installed on your machine. | ||
|
||
```bash | ||
npm run dev | ||
``` | ||
|
||
Go to http://localhost:3000 to see the development server | ||
|
||
## Build | ||
|
||
```bash | ||
npm run build | ||
``` | ||
|
||
## Docker | ||
|
||
To build the docker image | ||
```bash | ||
npm run docker:build | ||
``` | ||
|
||
To push the docker image | ||
```bash | ||
npm run docker:push | ||
``` | ||
|
||
## Password Reset | ||
|
||
In the case you lost your password, you can reset it using the following command | ||
|
||
```bash | ||
pnpm run build-server | ||
``` | ||
|
||
If you want to test the webhooks on development mode using localtunnel, make sure to install `localtunnel` | ||
|
||
```bash | ||
bunx lt --port 3000 | ||
``` | ||
|
||
If you run into permission issues of docker run the following command | ||
|
||
```bash | ||
sudo chown -R USERNAME dokploy or sudo chown -R $(whoami) ~/.docker | ||
``` | ||
|
||
## Application deploy | ||
|
||
In case you want to deploy the application on your machine and you selected nixpacks or buildpacks, you need to install first. | ||
|
||
```bash | ||
# Install Nixpacks | ||
curl -sSL https://nixpacks.com/install.sh -o install.sh \ | ||
&& chmod +x install.sh \ | ||
&& ./install.sh | ||
``` | ||
|
||
```bash | ||
# Install Buildpacks | ||
curl -sSL "https://github.com/buildpacks/pack/releases/download/v0.32.1/pack-v0.32.1-linux.tgz" | tar -C /usr/local/bin/ --no-same-owner -xzv pack | ||
``` | ||
|
||
|
||
## Pull Request | ||
|
||
- The `main` branch is the source of truth and should always reflect the latest stable release. | ||
- Create a new branch for each feature or bug fix. | ||
- Make sure to add tests for your changes. | ||
- Make sure to update the documentation for any changes Go to the [docs.dokploy.com](https://docs.dokploy.com) website to see the changes. | ||
- When creating a pull request, please provide a clear and concise description of the changes made. | ||
- If you include a video or screenshot, would be awesome so we can see the changes in action. | ||
- If your pull request fixes an open issue, please reference the issue in the pull request description. | ||
- Once your pull request is merged, you will be automatically added as a contributor to the project. | ||
|
||
Thank you for your contribution! |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
# Etapa 1: Prepare image for building | ||
FROM node:18-slim AS base | ||
|
||
# Install dependencies | ||
ENV PNPM_HOME="/pnpm" | ||
ENV PATH="$PNPM_HOME:$PATH" | ||
RUN corepack enable && apt-get update && apt-get install -y python3 make g++ git && rm -rf /var/lib/apt/lists/* | ||
|
||
WORKDIR /app | ||
|
||
# Copy package.json and pnpm-lock.yaml | ||
COPY package.json pnpm-lock.yaml ./ | ||
|
||
# Install dependencies only for building | ||
RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --frozen-lockfile | ||
|
||
# Copy the rest of the source code | ||
COPY . . | ||
|
||
# Build the application | ||
RUN pnpm run build | ||
|
||
# Stage 2: Prepare image for production | ||
FROM node:18-slim AS production | ||
|
||
# Install dependencies only for production | ||
ENV PNPM_HOME="/pnpm" | ||
ENV PATH="$PNPM_HOME:$PATH" | ||
RUN corepack enable && apt-get update && apt-get install -y curl && rm -rf /var/lib/apt/lists/* | ||
|
||
WORKDIR /app | ||
|
||
# Copy the rest of the source code | ||
COPY --from=base /app/.next ./.next | ||
COPY --from=base /app/dist ./dist | ||
COPY --from=base /app/next.config.mjs ./next.config.mjs | ||
COPY --from=base /app/public ./public | ||
COPY --from=base /app/package.json ./package.json | ||
COPY --from=base /app/drizzle ./drizzle | ||
COPY --from=base /app/.env.production ./.env | ||
COPY --from=base /app/components.json ./components.json | ||
|
||
# Install dependencies only for production | ||
COPY package.json pnpm-lock.yaml ./ | ||
RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --prod --frozen-lockfile | ||
|
||
# Install docker | ||
RUN curl -fsSL https://get.docker.com -o get-docker.sh && sh get-docker.sh && rm get-docker.sh | ||
|
||
|
||
# Install Nixpacks and tsx | ||
# | VERBOSE=1 VERSION=1.21.0 bash | ||
RUN curl -sSL https://nixpacks.com/install.sh -o install.sh \ | ||
&& chmod +x install.sh \ | ||
&& ./install.sh \ | ||
&& pnpm install -g tsx | ||
|
||
|
||
# Install buildpacks | ||
RUN curl -sSL "https://github.com/buildpacks/pack/releases/download/v0.32.1/pack-v0.32.1-linux.tgz" | tar -C /usr/local/bin/ --no-same-owner -xzv pack | ||
|
||
# Expose port | ||
EXPOSE 3000 | ||
|
||
CMD ["pnpm", "start"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
Copyright 2024-2024 Mauricio Siu. | ||
|
||
Licensed under the Apache License, Version 2.0 (the "License"); | ||
you may not use this file except in compliance with the License. | ||
You may obtain a copy of the License at | ||
|
||
http://www.apache.org/licenses/LICENSE-2.0 | ||
|
||
Unless required by applicable law or agreed to in writing, software | ||
distributed under the License is distributed on an "AS IS" BASIS, | ||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
See the License for the specific language governing permissions and | ||
limitations under the License. | ||
|
||
Appendix: | ||
In case of a conflict, the terms of this appendix supersede the general apache license. | ||
|
||
- Unless provided with a written agreement or permission, the paid features of Dokploy (as a service) cannot be modified. | ||
- Unless provided with a written agreement or permission, no persons are permitted to redistribute another paid version of Dokploy. | ||
- Unless provided with a written agreement or permission, no persons are permitted to create the same paid version of Dokploy. | ||
- Furthermore, any modifications of free features of Dokploy should be distributed as free & opensource software. | ||
|
||
Appendix B: | ||
|
||
- **Prohibition of Resale Without Permission:** Notwithstanding any provisions in the main body of the Apache License, Version 2.0, no party is permitted to sell, resell, or otherwise distribute for commercial gain, the software or any of its components, including both original and modified versions, through any form of commercial distribution channels, including but not limited to online marketplaces, software as a service (SaaS) platforms, or physical media distribution, without prior written consent from the copyright holder. | ||
|
||
- **Commercial Distribution:** Any form of distribution of Dokploy, whether for direct profit or indirect financial benefit, through commercial channels is strictly prohibited without a separate commercial agreement negotiated with the copyright holder. This includes but is not limited to, offerings on software marketplaces or through third-party distributors. | ||
|
||
- **Modification of Paid Features:** The paid features of Dokploy (as a service) may not be modified, integrated into other software, or redistributed in any form without explicit written permission from the copyright holder. | ||
|
||
- **Open Source Distribution of Free Features:** Any modifications to the free features of Dokploy must be distributed freely and must not be included in any paid or commercial package without complying with the open-source license terms stipulated in this agreement. | ||
|
||
If you have any questions, please feel free to reach out to us. | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
# Terms & Conditions | ||
|
||
|
||
Dokploy core is a free and open-source program alternative to Vercel, Netlify, and other cloud services. | ||
|
||
Developers of Dokploy do their best to prevent bugs and issues through rigorous testing processes and clean code principles. Dokploy is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
See the License for the specific language governing permissions and limitations under the [License](https://github.com/Dokploy/Dokploy/blob/main/LICENSE). | ||
|
||
By using Dokploy you agree to Terms and Conditions, and the license of Dokploy. | ||
|
||
### Description of Service: | ||
|
||
Dokploy core is an open-source program designed to streamline application deployment processes for personal and commercial use. Users are free to install, modify, and run Dokploy on their own machines or within their organizations to enhance their development and deployment workflows. While Dokploy encourages a wide range of uses to foster innovation and efficiency, it is crucial to note that selling Dokploy itself as a service or repackaging it as part of a commercial offering without explicit permission is strictly prohibited. This ensures that the open-source nature of Dokploy remains intact and benefits the community as a whole. | ||
|
||
### Our Responsibility | ||
|
||
Dokploy developers will do their best to ensure that Dokploy remains functional and major bugs are resolved quickly. If you have a feature request, you are more than welcome to open a request for it, but the ultimate decision whether or not the feature will be added is taken by Dokploy's core developers. | ||
|
||
### Usage Data | ||
|
||
Dokploy doesn't collect any usage data. It is a free and open-source program, and it is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
|
||
### Future changes | ||
|
||
Terms of Service / Terms & Conditions may change at any point without a prior notice. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
{ | ||
"$schema": "./node_modules/@biomejs/biome/configuration_schema.json", | ||
"linter":{ | ||
"rules": { | ||
"correctness":{ | ||
"useExhaustiveDependencies": "off" | ||
}, | ||
"suspicious":{ | ||
"noArrayIndexKey": "off" | ||
}, | ||
"a11y":{ | ||
"noSvgWithoutTitle":"off" | ||
} | ||
} | ||
} | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
{ | ||
"$schema": "https://ui.shadcn.com/schema.json", | ||
"style": "default", | ||
"rsc": false, | ||
"tsx": true, | ||
"tailwind": { | ||
"config": "tailwind.config.ts", | ||
"css": "styles/globals.css", | ||
"baseColor": "zinc", | ||
"cssVariables": true, | ||
"prefix": "" | ||
}, | ||
"aliases": { | ||
"components": "@/components", | ||
"utils": "@/lib/utils" | ||
} | ||
} |
Oops, something went wrong.