Try Pleasanter Now
## Overview
This is a setup guide for people who want to try Pleasanter right away. Here we introduce 3 methods.
|No.|Method|Recommended Points|
|:-:|:--|:--|
|1|Start with demo environment|No setup required. Sample data included.|
|2|Start with Docker|Can be used permanently. No feature restrictions.|
|3|Start with Pleasanter.net free plan|Can be used permanently. No setup required.|
Below, we summarize only the procedures, omitting technical details as much as possible.
## 1. Start with Demo Environment
In the demo environment, you can easily try Pleasanter. Please refer to the following PDF for how to use the demo environment.
[Read the explanatory PDF](https://pleasanter.org/downloads/get-started-pleasanter.pdf)
## 2. Start with Docker
By setting up with Docker, you can use Pleasanter (Community Edition) without feature restrictions permanently. For the procedure, please click "Read detailed explanation" below.
<details>
<summary>Read detailed explanation</summary>
### Procedure
The procedure is as follows.
1. [Prerequisites](#preq)
1. [Create and navigate to project directory](#projdir)
1. [Decide on 3 passwords](#makepass)
1. [Create 2 files](#makefiles)
1. [Run CodeDefiner](#runcodedefiner)
1. [Start and stop Pleasanter](#runpleasanter)
<a id="preq"></a>
### 1. Prerequisites
Please install [Docker Desktop](https://docs.docker.com/get-started/get-docker/) and confirm that it can be used.
<a id="projdir"></a>
### 2. Create and navigate to project directory
Execute the following commands.
```
mkdir ./pleasanter
cd ./pleasanter
```
<a id="makepass"></a>
### 3. Decide on 3 passwords
Decide on the 3 passwords to be specified in the .env file. The .env file will be created in the next step 4.
|No|Type|
|:-:|:--|
|[1]|SA Password|
|[2]|Owner Password|
|[3]|User Password|
<a id="makefiles"></a>
### 4. Create 2 files
Create two files ".env" and "compose.yaml" in the project directory.
For Windows
```
type nul > .env
type nul > compose.yaml
```
For macOS and Linux
```shell
touch .env
touch compose.yaml
```
#### .env
Open .env with a text editor and paste the following content. Enter the passwords you decided on above for [1], [2], and [3] respectively, then save.
```text
POSTGRES_USER=postgres
POSTGRES_PASSWORD=[1]
POSTGRES_DB=postgres
POSTGRES_HOST_AUTH_METHOD=scram-sha-256
POSTGRES_INITDB_ARGS="--auth-host=scram-sha-256 --encoding=UTF-8"
Implem_Pleasanter_Rds_PostgreSQL_SaConnectionString='Server=db;Database=postgres;UID=postgres;PWD=①'
Implem_Pleasanter_Rds_PostgreSQL_OwnerConnectionString='Server=db;Database=#ServiceName#;UID=#ServiceName#_Owner;PWD=[2]'
Implem_Pleasanter_Rds_PostgreSQL_UserConnectionString='Server=db;Database=#ServiceName#;UID=#ServiceName#_User;PWD=[3]'
```
#### compose.yaml
Open compose.yaml with a text editor, paste the following content, and save.
```yml
services:
db:
container_name: postgres
image: postgres:17
environment:
- POSTGRES_USER
- POSTGRES_PASSWORD
- POSTGRES_DB
- POSTGRES_HOST_AUTH_METHOD
- POSTGRES_INITDB_ARGS
volumes:
- type: volume
source: pg_data
target: /var/lib/postgresql/data
pleasanter:
container_name: pleasanter
image: implem/pleasanter:latest
depends_on:
- db
ports:
- '50001:8080'
environment:
Implem.Pleasanter_Rds_PostgreSQL_SaConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_SaConnectionString}
Implem.Pleasanter_Rds_PostgreSQL_OwnerConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_OwnerConnectionString}
Implem.Pleasanter_Rds_PostgreSQL_UserConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_UserConnectionString}
codedefiner:
container_name: codedefiner
image: implem/pleasanter:codedefiner
depends_on:
- db
environment:
Implem.Pleasanter_Rds_PostgreSQL_SaConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_SaConnectionString}
Implem.Pleasanter_Rds_PostgreSQL_OwnerConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_OwnerConnectionString}
Implem.Pleasanter_Rds_PostgreSQL_UserConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_UserConnectionString}
volumes:
pg_data:
name: ${COMPOSE_PROJECT_NAME:-default}_pg_data_volume
```
<a id="runcodedefiner"></a>
### 5. Run CodeDefiner
In the project directory, execute the following command.
```
docker compose run --rm codedefiner _rds /y /l "en" /z "UTC"
```
<a id="runpleasanter"></a>
### 6. Start and stop Pleasanter
#### Start Pleasanter
1. In the project directory, execute the following command.
```shell
docker compose up -d pleasanter
```
1. Open [http://localhost:50001](http://localhost:50001) in your web browser.
1. When the login screen is displayed, enter the following information.
|Login ID|Initial Password|
|:-:|:-:|
|Administrator|pleasanter|

1. Please change to a secure password.

1. Try the [hands-on manual](https://www.pleasanter.org/ja/manual?category=0190).
#### Stop Pleasanter
1. Close the web browser.
1. Stop the containers in the project directory.
```
docker compose stop
```
#### Start Pleasanter again
1. Start the containers in the project directory.
```shell
docker compose start
```
1. Open [http://localhost:50001](http://localhost:50001) in your web browser.
</details>
## 3. Start with Pleasanter.net Free Plan
With the Pleasanter.net free plan, you can use Pleasanter permanently without the hassle of setup. Please refer to the following PDF for how to use the Pleasanter.net free plan.
[Read the explanatory PDF](https://pleasanter.org/downloads/pleasanter_net_start.pdf)