Bootstrap fails on clean CentOS 7 install

SOLVED: Default installs of CentOS 7 with XFS file system creates the file system with the option ftype=0 which is incompatible with Docker. Rebuilding with either ftype=1 (which can’t be done through the GUI installer for CentOS) or as EXT4 file system will solve the issue. Be sure to run docker info first to see if there’s a warning at the end of the output.

Steps for reproduction:

  1. Install CentOS 7
  2. yum install curl wget nano zip unzip open-vm-tools -y
  3. yum update -y
  4. Disable SELinux and reboot
  5. Install Docker-CE (using instructions from Docker.com Redirecting…)
  6. Test that Docker is install and running properly. Add root and local user to docker usergroup.
  7. Install Discourse per instructions:
    As root:
    mkdir /var/discourse
    git clone https://github.com/discourse/discourse_docker.git /var/discourse
    cd /var/discourse
    ./discourse-setup

Sitename: forum.example.com
Admin email: admin@example.com
SMTP server: mailrelay.example.com
Username: [Enter]
Password: [Enter]
Let’s Encrypt: [Enter]

(Message displayed that ./launcher can’t run with default user/pass and to edit containers/app.yml

  1. nano containers/app.yml
    Add DISCOURSE_SMTP_AUTHENTICATION: 'none' to end of STMP section
    Uncomment TLS and change to false
    Change user/pass to something other than default - shouldn’t matter since I configured authentication to be off.

  2. Bootstrap app ./launcher bootstrap app

Log output:

I, [2017-08-25T07:32:38.278610 #13]  INFO -- : > cd /var/www/discourse && gem update bundler
I, [2017-08-25T07:32:42.411593 #13]  INFO -- : Updating installed gems
Updating bundler
Successfully installed bundler-1.15.4
Gems updated: bundler

I, [2017-08-25T07:32:42.411707 #13]  INFO -- : > cd /var/www/discourse && chown -R discourse /var/www/discourse
chown: cannot access '/var/www/discourse/app/assets/javascripts/admin/components/expanding-text-area.js.es6': No such file or directory
chown: cannot access '/var/www/discourse/app/assets/javascripts/discourse/components/small-action.js.es6': No such file or directory
chown: cannot access '/var/www/discourse/app/assets/javascripts/discourse/templates/components/small-action.hbs': No such file or directory
chown: cannot access '/var/www/discourse/lib/autospec/spork_runner.rb': No such file or directory
chown: cannot access '/var/www/discourse/lib/plugin/theme.rb': No such file or directory
chown: cannot access '/var/www/discourse/lib/site_setting_validations.rb': No such file or directory
chown: cannot access '/var/www/discourse/spec/controllers/admin/flags_controller_spec.rb': No such file or directory
chown: cannot access '/var/www/discourse/spec/fixtures/site_settings/env.yml': No such file or directory
chown: cannot access '/var/www/discourse/spec/integration/admin/backups_spec.rb': No such file or directory
chown: cannot access '/var/www/discourse/spec/integration/admin/emojis_spec.rb': No such file or directory
chown: cannot access '/var/www/discourse/spec/integration/admin/groups_spec.rb': No such file or directory
chown: cannot access '/var/www/discourse/spec/integration/groups_spec.rb': No such file or directory
chown: cannot access '/var/www/discourse/spec/integration/managing_topic_status_spec.rb': No such file or directory
chown: cannot access '/var/www/discourse/spec/integration/omniauth_callbacks_spec.rb': No such file or directory
chown: cannot access '/var/www/discourse/spec/integration/safe_mode_spec.rb': No such file or directory
chown: cannot access '/var/www/discourse/spec/integration/tags_spec.rb': No such file or directory
chown: cannot access '/var/www/discourse/spec/integration/users_spec.rb': No such file or directory
chown: cannot access '/var/www/discourse/spec/jobs/clean_up_unused_staged_users.rb': No such file or directory
chown: cannot access '/var/www/discourse/test/javascripts/controllers/flag-test.js.es6': No such file or directory
I, [2017-08-25T07:32:46.116337 #13]  INFO -- :
196:signal-handler (1503646366) Received SIGTERM scheduling shutdown...
I, [2017-08-25T07:32:46.116739 #13]  INFO -- : Terminating async processes
I, [2017-08-25T07:32:46.116810 #13]  INFO -- : Sending INT to HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/9.5/bin/postmaster -D /etc/postgresql/9.5/main pid: 83
I, [2017-08-25T07:32:46.116918 #13]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 196
2017-08-25 07:32:46.117 UTC [83] LOG:  received fast shutdown request
2017-08-25 07:32:46.117 UTC [83] LOG:  aborting any active transactions
2017-08-25 07:32:46.117 UTC [90] LOG:  autovacuum launcher shutting down
2017-08-25 07:32:46.132 UTC [87] LOG:  shutting down
196:M 25 Aug 07:32:46.380 # User requested shutdown...
196:M 25 Aug 07:32:46.380 * Saving the final RDB snapshot before exiting.
196:M 25 Aug 07:32:46.389 * DB saved on disk
196:M 25 Aug 07:32:46.389 # Redis is now ready to exit, bye bye...
2017-08-25 07:32:46.690 UTC [87] LOG:  database system is shut down


FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && chown -R discourse /var/www/discourse failed with return #<Process::Status: pid 313 exit 1>
Location of failure: /pups/lib/pups/exec_command.rb:108:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"web", "cmd"=>["gem update bundler", "chown -R discourse $home"]}
3c4a42f8102bc22506745ded18e64c6d739db17d676ab3192573ff399a083c52
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one

what is the output of docker info ?

2 Likes
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 1
Server Version: 17.06.1-ce
Storage Driver: overlay
 Backing Filesystem: xfs
 Supports d_type: false
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 6e23458c129b551d5c9871e5174f6b1b7f6d1170
runc version: 810190ceaa507aa2727d7ae6f4790c76ec150bd2
init version: 949e6fa
Security Options:
 seccomp
  Profile: default
Kernel Version: 3.10.0-514.26.2.el7.x86_64
Operating System: CentOS Linux 7 (Core)
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 3.86GiB
Name: forum.example.com
ID: A2QA:AT7T:DSSF:2UXD:SOJW:MALA:QPU5:QQ27:B4K4:DGVI:GLJO:2FHU
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

WARNING: overlay: the backing xfs filesystem is formatted without d_type support, which leads to incorrect behavior.
         Reformat the filesystem with ftype=1 to enable d_type support.
         Running without d_type support will not be supported in future releases.

There is that – have you taken that advice? It sounds important.

Haven’t done this yet. I’ll reinstall the OS with EXT4 FS since CentOS can’t specify the ftype during the GUI installer. I’ll report back shortly.

The file system problem was causing the issue. Rebuilt with EXT4 partitions. Resolved.

7 Likes