add contribution guide on container based development flow
This commit is contained in:
parent
02c42a7e3a
commit
cb478e0dc8
@ -5,19 +5,27 @@ # Contribution
|
|||||||
You can ask for guidance anytime on our Discord server in the #contribution channel.
|
You can ask for guidance anytime on our Discord server in the #contribution channel.
|
||||||
|
|
||||||
## Setup your development environment
|
## Setup your development environment
|
||||||
|
### Container based development flow (recommended and the easiest)
|
||||||
|
All you need is to intall [Docker Engine 20.11+](https://docs.docker.com/engine/install/) on your local machine and run `pnpm dev:container`. It will build the base image for Coolify and start the development server inside Docker. All required ports (3000, 3001) will be exposed to your host.
|
||||||
|
|
||||||
### Github codespaces
|
### Github codespaces
|
||||||
|
|
||||||
If you have github codespaces enabled then you can just create a codespace and run `pnpm dev` to run your the dev environment. All the required dependencies and packages has been configured for you already.
|
If you have github codespaces enabled then you can just create a codespace and run `pnpm dev` to run your the dev environment. All the required dependencies and packages has been configured for you already.
|
||||||
|
|
||||||
### Gitpod
|
### Gitpod
|
||||||
|
1. Use [container based development flow](#container-based-development-flow-easiest)
|
||||||
|
2. Or setup your workspace manually:
|
||||||
|
|
||||||
If you have a [Gitpod](https://gitpod.io), you can just create a workspace from this repository, run `pnpm install && pnpm db:push && pnpm db:seed` and then `pnpm dev`. All the required dependencies and packages has been configured for you already.
|
Create a workspace from this repository, run `pnpm install && pnpm db:push && pnpm db:seed` and then `pnpm dev`. All the required dependencies and packages has been configured for you already.
|
||||||
|
|
||||||
|
> Some packages, just `pack` are not installed in this way. You cannot test all the features. Please use the [container based development flow](#container-based-development-flow-easiest).
|
||||||
|
|
||||||
### Local Machine
|
### Local Machine
|
||||||
> At the moment, Coolify `doesn't support Windows`. You must use `Linux` or `MacOS` or consider using Gitpod or Github Codespaces.
|
> At the moment, Coolify `doesn't support Windows`. You must use `Linux` or `MacOS` or consider using Gitpod or Github Codespaces.
|
||||||
|
|
||||||
- Due to the lock file, this repository is best with [pnpm](https://pnpm.io). I recommend you try and use `pnpm` because it is cool and efficient!
|
Install all the prerequisites manually to your host system. If you would not like to install anything, I suggest to use the [container based development flow](#container-based-development-flow-easiest).
|
||||||
|
|
||||||
|
- Due to the lock file, this repository is best with [pnpm](https://pnpm.io). I recommend you try and use `pnpm` because it is cool and efficient!
|
||||||
- You need to have [Docker Engine](https://docs.docker.com/engine/install/) installed locally.
|
- You need to have [Docker Engine](https://docs.docker.com/engine/install/) installed locally.
|
||||||
- You need to have [Docker Compose Plugin](https://docs.docker.com/compose/install/compose-plugin/) installed locally.
|
- You need to have [Docker Compose Plugin](https://docs.docker.com/compose/install/compose-plugin/) installed locally.
|
||||||
- You need to have [GIT LFS Support](https://git-lfs.github.com/) installed locally.
|
- You need to have [GIT LFS Support](https://git-lfs.github.com/) installed locally.
|
||||||
|
@ -5,9 +5,11 @@ services:
|
|||||||
build:
|
build:
|
||||||
context: .
|
context: .
|
||||||
dockerfile: Dockerfile-dev
|
dockerfile: Dockerfile-dev
|
||||||
command: pnpm dev:container
|
command: bash -c 'pnpm install && pnpm db:push && pnpm db:seed && pnpm dev'
|
||||||
env_file: apps/api/.env
|
|
||||||
environment:
|
environment:
|
||||||
|
- COOLIFY_APP_ID=random-local-id
|
||||||
|
- COOLIFY_SECRET_KEY=12341234123412341234123412341234
|
||||||
|
- COOLIFY_DATABASE_URL=file:../db/dev.db
|
||||||
- GITPOD_WORKSPACE_URL=${GITPOD_WORKSPACE_URL}
|
- GITPOD_WORKSPACE_URL=${GITPOD_WORKSPACE_URL}
|
||||||
- CODESANDBOX_HOST=${CODESANDBOX_HOST}
|
- CODESANDBOX_HOST=${CODESANDBOX_HOST}
|
||||||
container_name: coolify
|
container_name: coolify
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
"format:api": "NODE_ENV=development pnpm run --filter api format",
|
"format:api": "NODE_ENV=development pnpm run --filter api format",
|
||||||
"lint": "run-p -l -n lint:*",
|
"lint": "run-p -l -n lint:*",
|
||||||
"lint:api": "NODE_ENV=development pnpm run --filter api lint",
|
"lint:api": "NODE_ENV=development pnpm run --filter api lint",
|
||||||
"dev:container": "pnpm install && pnpm db:push && pnpm db:seed && pnpm dev",
|
"dev:container": "docker-compose -f docker-compose-dev.yaml up",
|
||||||
"dev": "run-p -l -n dev:api dev:ui",
|
"dev": "run-p -l -n dev:api dev:ui",
|
||||||
"dev:api": "NODE_ENV=development pnpm run --filter api dev",
|
"dev:api": "NODE_ENV=development pnpm run --filter api dev",
|
||||||
"dev:ui": "NODE_ENV=development pnpm run --filter ui dev",
|
"dev:ui": "NODE_ENV=development pnpm run --filter ui dev",
|
||||||
|
Loading…
Reference in New Issue
Block a user