# Interesse an Podman?

**URL:** https://meta.discourse.org/t/any-interest-in-podman/118182
**Category:** Development
**Created:** [20. Mai 2019 um 05:10 UTC](https://meta.discourse.org/t/any-interest-in-podman/118182 "2019-05-20T05:10:03Z")
**Posts on this page:** 1
**Showing post:** 20

<div class="post-metadata">

### Author: ![mcdanlj](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mcdanlj/32/131829_2.png) [@mcdanlj](https://meta.discourse.org/u/mcdanlj)
#### Post date: [28. Oktober 2019 um 22:16 UTC](https://meta.discourse.org/t/any-interest-in-podman/118182/20 "2019-10-28T22:16:46Z")

</div>

> [@sam](#):
>
> Soweit ich weiß, hat in der Geschichte der Menschheit noch niemand versucht, Discourse mit Podman zu installieren.

Ich habe es etwa eine halbe Stunde lang versucht. Podman ist kommando-kompatibel, aber nicht output-kompatibel, sodass `launcher` verwirrt wird, wenn es versucht, die Ausgabe zu parsen. (Es ist nicht schwer, sie zu unterscheiden: `docker --version` antwortet mit `podman version 1.0.5`, also ist dies kein ernsthaftes Hindernis.)

Es gibt kein Netzwerkgerät `docker0`. Der Standard-`overlay`-Speichertreiber in Podman ist im Wesentlichen die `overlay2`-Implementierung und darauf aliased, aber die Ausgabe sagt nicht `overlay2`, und die Ausgabe des Befehls `docker info` ist leicht unterschiedlich. Ich habe `--skip-prereqs` verwendet, um die Prüfungen zu umgehen. Die freigegebenen Verzeichnisse wurden nicht automatisch erstellt; ich habe nicht untersucht, warum. Ich habe `mkdir -p /var/discourse/shared/standalone/log/var-log` ausgeführt, um weiterzukommen. Als Nächstes sah ich Berechtigungsprobleme, weil [SELinux aktiviert, aber nicht für /var/discourse konfiguriert war](https://danwalsh.livejournal.com/81269.html).

> Wenn Sie ein Verzeichnis in einen Container einbinden und ein **:z** oder **:Z** hinzufügen, etikettieren die Container-Engines den Inhalt unter den Volumes auf `container_file_t`.

Die [Podman-Build-Dokumentation](https://github.com/containers/libpod/blob/master/docs/podman-build.1.md) besagt:

> Die Option `z` teilt Podman mit, dass zwei Container den Volumeninhalt teilen. Infolgedessen etikettiert Podman den Inhalt mit einem geteilten Inhaltslabel. Geteilte Volumenlabels ermöglichen es allen Containern, den Inhalt zu lesen und zu schreiben. Die Option `Z` weist Podman an, den Inhalt mit einem privaten, nicht geteilten Label zu versehen. Nur der aktuelle Container kann ein privates Volumen verwenden.

~~Ich habe mich entschieden, `setenforce 0` für diese vorübergehende Installation vorübergehend zu setzen und später vielleicht darauf zurückzukommen.~~ Ich habe die `volumes` so geändert, dass sie das kleingeschriebene `:z` verwenden:

```plaintext
volumes:
  - volume:
      host: /var/discourse/shared/standalone
      guest: /shared:z
  - volume:
      host: /var/discourse/shared/standalone/log/var-log
      guest: /var/log:z

```

Mit diesen kleinen Änderungen habe ich es geschafft, dass Discourse hochgefahren wird. Redis ist unglücklich darüber, dass transparente große Seiten im Kernel unterstützt werden, und schlägt vor, dies zu deaktivieren sowie die Einstellungen für die Speicherüberbelegung zu ändern. Wahrscheinlich sind viele andere nützliche Debug-Meldungen an mir in den Megabytes an Logausgabe vorbeigeflogen!

```plaintext
./launcher start app
...
--restart option is not supported.
Use systemd unit files for restarting containers

```

Ich habe das Skript so angepasst, dass es `--restart` nicht verwendet, und festgestellt, dass auch im `start`-Modus `--skip-prereqs` erforderlich ist, was mich schließlich dazu brachte, `docker run` auszuprobieren, woraufhin:

```plaintext
./launcher start app --skip-prereqs
...
+ /usr/bin/docker run ... -e DOCKER_HOST_IP= --name app -t -p 80:80 -p 443:443 -v /var/discourse/shared/standalone:/shared:z -v /var/discourse/shared/standalone/log/var-log:/var/log:z --mac-address 02:9c:01:9b:0e:17 local_discourse/app /sbin/boot
--mac-address option not currently supported

```

Es funktioniert also definitiv nicht aus der Box, und ich weiß nicht, wie viel Arbeit es wäre, `launcher` so anzupassen, dass es entweder mit Docker oder Podman funktioniert. Die Behandlung von Voraussetzungen wäre „einfach

---

_[View the full topic](https://meta.discourse.org/t/any-interest-in-podman/118182)._
