Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The make build command fails with permission denied on /srv/jekyll #44

Open
cason opened this issue Feb 22, 2023 · 1 comment
Open

The make build command fails with permission denied on /srv/jekyll #44

cason opened this issue Feb 22, 2023 · 1 comment

Comments

@cason
Copy link

cason commented Feb 22, 2023

Make fetch has ran without errors, but:

$ make build
---> Building documentation
Bundler 2.3.25 is running, but your lockfile was generated with 2.1.4. Installing Bundler 2.1.4 and restarting using that version.
Fetching gem metadata from https://rubygems.org/.
Fetching bundler 2.1.4
Installing bundler 2.1.4
Fetching gem metadata from https://rubygems.org/.............
Fetching public_suffix 5.0.1
Installing public_suffix 5.0.1
Using addressable 2.8.1
Using bundler 2.1.4
Using colorator 1.1.0
Fetching concurrent-ruby 1.2.0
Installing concurrent-ruby 1.2.0
Using eventmachine 1.2.7
Using http_parser.rb 0.8.0
Using em-websocket 0.5.3
Using ffi 1.15.5
Using forwardable-extended 2.6.0
Using i18n 1.12.0
Using sassc 2.4.0
Using jekyll-sass-converter 2.2.0
Using rb-fsevent 0.11.2
Using rb-inotify 0.10.1
Fetching listen 3.8.0
Installing listen 3.8.0
Using jekyll-watch 2.2.1
Using rexml 3.2.5
Using kramdown 2.4.0
Using kramdown-parser-gfm 1.1.0
Fetching liquid 4.0.4
Installing liquid 4.0.4
Using mercenary 0.4.0
Using pathutil 0.16.2
Using rouge 3.30.0
Using safe_yaml 1.0.5
Using unicode-display_width 1.8.0
Using terminal-table 2.0.0
Using jekyll 4.2.2
Fetching jekyll-regex-replace 1.1.0
Installing jekyll-regex-replace 1.1.0
Fetching jekyll-relative-links 0.7.0
Installing jekyll-relative-links 0.7.0
Fetching jekyll-titles-from-headings 0.5.3
Installing jekyll-titles-from-headings 0.5.3
Fetching webrick 1.8.1
Installing webrick 1.8.1
Bundle complete! 10 Gemfile dependencies, 32 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
  Logging at level: debug
    Jekyll Version: 4.2.2
Configuration file: /srv/jekyll/_config.yml
                    ------------------------------------------------
      Jekyll 4.2.2   Please append `--trace` to the `build` command 
                     for any additional information or backtrace. 
                    ------------------------------------------------
/usr/local/lib/ruby/3.1.0/fileutils.rb:243:in `mkdir': Permission denied @ dir_s_mkdir - /srv/jekyll/.jekyll-cache (Errno::EACCES)
	from /usr/local/lib/ruby/3.1.0/fileutils.rb:243:in `fu_mkdir'
	from /usr/local/lib/ruby/3.1.0/fileutils.rb:221:in `block (2 levels) in mkdir_p'
	from /usr/local/lib/ruby/3.1.0/fileutils.rb:219:in `reverse_each'
	from /usr/local/lib/ruby/3.1.0/fileutils.rb:219:in `block in mkdir_p'
	from /usr/local/lib/ruby/3.1.0/fileutils.rb:211:in `each'
	from /usr/local/lib/ruby/3.1.0/fileutils.rb:211:in `mkdir_p'
	from /usr/gem/gems/jekyll-4.2.2/lib/jekyll/cache.rb:184:in `dump'
	from /usr/gem/gems/jekyll-4.2.2/lib/jekyll/cache.rb:101:in `[]='
	from /usr/gem/gems/jekyll-4.2.2/lib/jekyll/cache.rb:45:in `clear_if_config_changed'
	from /usr/gem/gems/jekyll-4.2.2/lib/jekyll/site.rb:118:in `reset'
	from /usr/gem/gems/jekyll-4.2.2/lib/jekyll/site.rb:35:in `initialize'
	from /usr/gem/gems/jekyll-4.2.2/lib/jekyll/commands/build.rb:30:in `new'
	from /usr/gem/gems/jekyll-4.2.2/lib/jekyll/commands/build.rb:30:in `process'
	from /usr/gem/gems/jekyll-4.2.2/lib/jekyll/command.rb:91:in `block in process_with_graceful_fail'
	from /usr/gem/gems/jekyll-4.2.2/lib/jekyll/command.rb:91:in `each'
	from /usr/gem/gems/jekyll-4.2.2/lib/jekyll/command.rb:91:in `process_with_graceful_fail'
	from /usr/gem/gems/jekyll-4.2.2/lib/jekyll/commands/build.rb:18:in `block (2 levels) in init_with_program'
	from /usr/gem/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `block in execute'
	from /usr/gem/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `each'
	from /usr/gem/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `execute'
	from /usr/gem/gems/mercenary-0.4.0/lib/mercenary/program.rb:44:in `go'
	from /usr/gem/gems/mercenary-0.4.0/lib/mercenary.rb:21:in `program'
	from /usr/gem/gems/jekyll-4.2.2/exe/jekyll:15:in `<top (required)>'
	from /usr/gem/bin/jekyll:25:in `load'
	from /usr/gem/bin/jekyll:25:in `<top (required)>'
	from /usr/gem/gems/bundler-2.1.4/lib/bundler/cli/exec.rb:63:in `load'
	from /usr/gem/gems/bundler-2.1.4/lib/bundler/cli/exec.rb:63:in `kernel_load'
	from /usr/gem/gems/bundler-2.1.4/lib/bundler/cli/exec.rb:28:in `run'
	from /usr/gem/gems/bundler-2.1.4/lib/bundler/cli.rb:476:in `exec'
	from /usr/gem/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
	from /usr/gem/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
	from /usr/gem/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor.rb:399:in `dispatch'
	from /usr/gem/gems/bundler-2.1.4/lib/bundler/cli.rb:30:in `dispatch'
	from /usr/gem/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/base.rb:476:in `start'
	from /usr/gem/gems/bundler-2.1.4/lib/bundler/cli.rb:24:in `start'
	from /usr/gem/gems/bundler-2.1.4/exe/bundle:46:in `block in <top (required)>'
	from /usr/gem/gems/bundler-2.1.4/lib/bundler/friendly_errors.rb:123:in `with_friendly_errors'
	from /usr/gem/gems/bundler-2.1.4/exe/bundle:34:in `<top (required)>'
	from /usr/local/bin/bundle:25:in `load'
	from /usr/local/bin/bundle:25:in `<main>'
make: *** [Makefile:45: build] Error 1

I assume that the /srv refers to inside the Docker image, right? In fact, nothing is produced in the installation /srv/ directory. I've tried to change its permissions, but the same error persists.

OS: Ubuntu 22.10

Docker version: Docker version 20.10.16, build 20.10.16-0ubuntu1

@cason cason changed the title Make build fails with permission denied on /srv/jekyll The make build command fails with permission denied on /srv/jekyll Feb 22, 2023
@cason
Copy link
Author

cason commented Feb 22, 2023

The problem is a mismatch between the local user (UID=1001, GID=1001 in my setup) and the jekyll user (UID=1000, GID=1000) inside the Docker image. If their ids match, this error should not be observed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant