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

Error when locally serving Qubes website on Fedora 31 #5885

Closed
andrewdavidwong opened this issue Jun 8, 2020 · 7 comments
Closed

Error when locally serving Qubes website on Fedora 31 #5885

andrewdavidwong opened this issue Jun 8, 2020 · 7 comments
Labels
C: infrastructure C: website P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. R: upstream issue Resolution: This issue pertains to software that the Qubes OS Project does not develop or control. T: bug Type: bug report. A problem or defect resulting in unintended behavior in something that exists.
Milestone

Comments

@andrewdavidwong
Copy link
Member

andrewdavidwong commented Jun 8, 2020

Qubes OS version

N/A

(This is a bug that affects Qubes users who are trying to serve the Qubes website locally, especially those who work on the website, like myself. It is not a bug internal to Qubes OS itself.)

Affected component(s) or functionality

Locally serving the Qubes website on Fedora 31 template

Brief summary

With my Fedora 30 template, I was able to serve the website locally without a problem. After upgrading to Fedora 31, I encounter an error when trying to serve the website locally, and I can't find any solutions by searching the web for the error message. This hinders my and all contributors' effectiveness in working on the website, documentation, and posts, since I cannot preview the site before pushing live changes.

To Reproduce

Steps to reproduce the behavior:

  1. Upgrade template from Fedora 30 to 31.
  2. Enter Qubes website repo directory.
  3. sudo systemctl start docker && sudo make

Expected behavior

On Fedora 30:

$ sudo systemctl start docker && sudo make
mv Gemfile _Gemfile && docker-compose up && mv _Gemfile Gemfile
Pulling jekyll (jekyll/jekyll:pages)...
Trying to pull repository docker.io/jekyll/jekyll ... 
sha256:f7a1edb2a9133c690d90cbb97583381b348a56be141e75090dbdcdbc3cc0fd44: Pulling from docker.io/jekyll/jekyll
cbdbe7a5bc2a: Pull complete
aa8ae8202b42: Pull complete
b21786fe7c0d: Pull complete
2e8deee27474: Pull complete
b84a6ba69f44: Pull complete
a4e8966314b7: Pull complete
Digest: sha256:f7a1edb2a9133c690d90cbb97583381b348a56be141e75090dbdcdbc3cc0fd44
Status: Downloaded newer image for docker.io/jekyll/jekyll:pages
Creating qubesosgithubio_jekyll_1 ... done
Attaching to qubesosgithubio_jekyll_1
jekyll_1  | ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [x86_64-linux-musl]
jekyll_1  | Configuration file: /srv/jekyll/_config.yml
jekyll_1  |             Source: /srv/jekyll
jekyll_1  |        Destination: /srv/jekyll/_site
jekyll_1  |  Incremental build: disabled. Enable with --incremental
jekyll_1  |       Generating... 
jekyll_1  |                     done in 13.768 seconds.
jekyll_1  |  Auto-regeneration: enabled for '/srv/jekyll'
jekyll_1  |     Server address: http://0.0.0.0:4000
jekyll_1  |   Server running... press ctrl-c to stop.

Actual behavior

After updating to Fedora 31:

$ sudo systemctl start docker && sudo make
mv Gemfile _Gemfile && docker-compose up && mv _Gemfile Gemfile
Pulling jekyll (jekyll/jekyll:pages)...
pages: Pulling from jekyll/jekyll
cbdbe7a5bc2a: Pull complete
aa8ae8202b42: Pull complete
b21786fe7c0d: Pull complete
2e8deee27474: Pull complete
b84a6ba69f44: Pull complete
a4e8966314b7: Pull complete
Digest: sha256:f7a1edb2a9133c690d90cbb97583381b348a56be141e75090dbdcdbc3cc0fd44
Status: Downloaded newer image for jekyll/jekyll:pages
Creating qubesosgithubio_jekyll_1 ... error

ERROR: for qubesosgithubio_jekyll_1  Cannot start service jekyll: OCI runtime create failed: this version of runc doesn't work on cgroups v2: unknown

ERROR: for jekyll  Cannot start service jekyll: OCI runtime create failed: this version of runc doesn't work on cgroups v2: unknown
ERROR: Encountered errors while bringing up the project.
make: *** [Makefile:2: all] Error 1

Solutions you've tried

I've tried searching the web for Cannot start service jekyll: OCI runtime create failed: this version of runc doesn't work on cgroups v2: unknown (and parts and variations of this). None of the results have led to a solution. Some of them seem to suggest that it might be an upstream bug, but I'm not sure.

Relevant documentation you've consulted

https://github.com/QubesOS/qubesos.github.io#instructions

Related, non-duplicate issues

None found.

@andrewdavidwong andrewdavidwong added T: bug Type: bug report. A problem or defect resulting in unintended behavior in something that exists. C: website P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. C: infrastructure labels Jun 8, 2020
@andrewdavidwong andrewdavidwong added this to the Ongoing milestone Jun 8, 2020
@andrewdavidwong andrewdavidwong changed the title Error when locally serving Qubes website Error when locally serving Qubes website on Fedora 31 Jun 8, 2020
@marmarek
Copy link
Member

marmarek commented Jun 9, 2020

This isn't really anything special to our repository. One of the changes in Fedora 31 made it incompatible with docker, see here for details: https://fedoraproject.org/wiki/Common_F31_bugs#Docker_package_no_longer_available_and_will_not_run_by_default_.28due_to_switch_to_cgroups_v2.29

@andrewdavidwong
Copy link
Member Author

Closing as "not our bug." If anyone believes this is a mistake, please leave a comment, and we'll be happy to take another look. Thank you.

@andrewdavidwong andrewdavidwong added the R: upstream issue Resolution: This issue pertains to software that the Qubes OS Project does not develop or control. label Jun 9, 2020
@andrewdavidwong
Copy link
Member Author

andrewdavidwong commented Jun 9, 2020

Unfortunately, none of the workarounds suggested in that link have helped me. podman does not have a replacement for docker-compose. In addition, I can't seem to use or install grubby because there is a Qubes-specific grubby-dummy package. In the meantime, I'm just using my old F30 template whenever I need to serve the site locally.

@marmarek
Copy link
Member

marmarek commented Jun 9, 2020

You can try adding kernel option via kernelopts vm property.
In the long run, using podman probably would be better, but I have mixed results with it being docker-compatible.

@ElliotKillick
Copy link

I also faced this problem. podman has podman-compose but you must install the podman-compose package. I tried this and it went off without a hitch, works just like Docker.

@andrewdavidwong
Copy link
Member Author

I installed podman and podman-compose, and I tried using them as drop-in replacements for docker and docker-compose. However, when I tried serving the Qubes website as normal, I got this:

$ mv Gemfile _Gemfile && podman-compose up && mv _Gemfile Gemfile
Traceback (most recent call last):
  File "/usr/bin/podman-compose", line 11, in <module>
    load_entry_point('podman-compose==0.1.6.dev0', 'console_scripts', 'podman-compose')()
  File "/usr/lib/python3.7/site-packages/podman_compose.py", line 1267, in main
    podman_compose.run()
  File "/usr/lib/python3.7/site-packages/podman_compose.py", line 741, in run
    self._parse_compose_file()
  File "/usr/lib/python3.7/site-packages/podman_compose.py", line 822, in _parse_compose_file
    flat_deps(services, with_extends=True)
  File "/usr/lib/python3.7/site-packages/podman_compose.py", line 603, in flat_deps
    for name, srv in services.items():
AttributeError: 'NoneType' object has no attribute 'items'
make: *** [Makefile:2: all] Error 1

andrewdavidwong added a commit to QubesOS/qubesos.github.io that referenced this issue Aug 23, 2020
andrewdavidwong added a commit to QubesOS/qubesos.github.io that referenced this issue Aug 23, 2020
@andrewdavidwong
Copy link
Member Author

I found the problem (containers/podman-compose#134). The fix turned out to be somewhat trivial (QubesOS/qubesos.github.io@f785a8d).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C: infrastructure C: website P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. R: upstream issue Resolution: This issue pertains to software that the Qubes OS Project does not develop or control. T: bug Type: bug report. A problem or defect resulting in unintended behavior in something that exists.
Projects
None yet
Development

No branches or pull requests

3 participants