Run Your passenger nginx postgres ruby the simple way
- 3.3
- 3.3.1 - Change docker-entrypoint.rb to docker-entrypoint.sh to lower memory usage
- 3.3.2 - Add
passenger_max_requests=3000andpassenger_force_max_concurrent_requests_per_process=1000to/cable - 3.3.3 - Remove
npm install -g npm
v3.3-u20.04-r2.3.1-n10 means:
v3.3- pnpr versionu20.04- ubuntu versionr2.3.1- ruby versionn10- node version
version: '3.2'services:
server:
image: ipepe/pnpr:v3.3-u20.04-r2.3.1-n10restart: alwaysnetwork_mode: bridgehealthcheck:
disable: trueenvironment:
PGPASSWORD: Password1RAILS_ENV: 'staging'links:
- postgres_dbports:
- "3322:22"
- "3080:80"volumes:
- ./data/webapp:/home/webapp/webapp
- ./data/ssh:/home/webapp/.sshexpose:
- 80
- 443labels:
- "traefik.enable=true"
- "traefik.port=80"
- "traefik.frontend.rule=Host:example.org"logging:
driver: json-fileoptions:
max-size: 50mpostgres_db:
network_mode: bridgeimage: postgres:15restart: alwaysenvironment:
POSTGRES_DB: webappPOSTGRES_USER: webappPOSTGRES_PASSWORD: Password1expose:
- 5432volumes:
- ./data/db:/var/lib/postgresql/data
- ./data/dbdumps:/dbdumps| Variable | Description |
|---|---|
WITHOUT_MALLOC_ARENA_MAX | Set to 1 to disable MALLOC_ARENA_MAX=2 |
RAILS_ENV | Rails environment, defaults to production |
RUBY_VERSION | Ruby version, changing it will not reinstall rbenv |
NODE_VERSION | Node version, changing it will not reinstall nodenv |
RAILS_ENV | Rails environment, defaults to production |
NODE_ENV | Node environment, defaults to production |
PASSENGER_FRIENDLY_ERROR_PAGES | Set to on to enable friendly error pages. Set to off to disable |
PASSENGER_MAX_REQUEST_QUEUE_SIZE | Default is 1000, change it based on your preferences |
PASSENGER_MAX_POOL_SIZE | Default is 60, change it based on your preferences |
PASSENGER_FRIENDLY_ERROR_PAGES | Set to on to enable friendly error pages. Set to off to disable |
NO_ACTION_CABLE | Set to 1 to disable action cable |
CABLE_PASSENGER_FORCE_MAX_CONCURRENT_REQUESTS_PER_PROCESS | Default is 0, change it based on your preferences |
PASSENGER_MAX_REQUESTS | Default is 3000, change it based on your preferences |
It's probably because bundler command is not found. To ensure that env path is included in cron add
env :PATH, ENV['PATH'] to schedule.rb