bin/docker/builddocker pull feduxorg/www_test_serverMake sure no other server process is bound to port 3000 locally.
# Maybe use need to run this command with `sudo` prefixed
docker run \
  --name www_test_server-1 \
  --rm \
  -p 3000:3000 \
  feduxorg/www_test_serverAlternatively install docker-compose and run the whole bunch of images:
# Maybe use need to run this command with `sudo` prefixed
docker-compose up \
  --force-recreate \
  --always-recreate-deps \
  --abort-on-container-exit \
  --renew-anon-volumes \
  --remove-orphans
The image includes a script /srv/app/Init which sets up the
roles admin, user and guest. It also creates a user called
[email protected] with password *Test123. After creating another
admin-user you can safely remove the bootstrapped admin user.
docker exec -it www_test_server-1 bash
rake db:seed
If you want to run another database than SQlite you need to pass the
DATABASE_URL-environment variable to the container.
# SQLite
DATABASE_URL="sqlite3:db/development.sqlite3"
# mind the / at the very beginning of the path
DATABASE_URL="sqlite3:/db/production.sqlite3"
# Postgres
# Make sure your hostname does not include "underscores"
# this does not work with the default URL library used by ruby
DATABASE_URL="postgresql://user:password@host/database?pool=5&encoding=unicode"
Run the container
docker run \
  --name www_test_server-1 \
  -e DATABASE_URL="postgresql://user:password@host/database?pool=5&encoding=unicode" \
  --rm \
  -ti \
  -p 3000:3000 \
  feduxorg/centos-www_test_server
All users and (hashed) passwords are stored in the same database "Rails" uses. Users can use most features of the web application. But only administrators are able to:
- Create new and modify existing users
 - Upload new/Change existing/Delete existing files
 
After adding a user you need to approve it. Otherwise the user cannot sign in.
You need to replace config.action_mailer.default_url_options with an
appropriate value for your environment in
app/config/environments/production.rb. By default it's { host: 'localhost', port: 3000 }.