Giter VIP home page Giter VIP logo

foreman-docker-compose's People

Contributors

bittner avatar boaz0 avatar iahmad-khan avatar ohadlevy avatar shlomizadok avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

foreman-docker-compose's Issues

Review announcement of Ohad Levy

Ohad Levy has just announced that a "Dockerfile is now included in foreman core" and "a docker-compose ready to use production environment you can deploy". That sounds like exciting news!

We should review that setup, ensure that it's concise, sufficiently simple and complete. And maybe contribute in a way that a warning à la "Please don’t use it for real production environments" is not needed anymore.

If it makes sense we may include a reference on that thing in the README of this repository.

What is the admin password? (aka "How reset admin password?")

I can successfully bring up the Docker Compose setup (simply running docker-compose up), then The Foreman shows up successfully on http://localhost after some time. However, I don't see any hint on the (default) password of the admin user anywhere (and it's not changeme anymore, as it used to be a few versions ago).

According to current installation instructions the admin password is printed out during the installation. Unfortunately, this helps little when you forget to record that information. Is there an easy way to (re)set a user's password?

Note that there seems to be no foreman-rake command in any of the built images to run commands to reset the password.

If there is a solution for this it may be a good idea to document this in the README.

Mirrors update needed

Hi all
I'd like to build this project for testing but I have a issue with the mirrors list of the proxy building I think. See below ;

Errors during downloading metadata for repository 'fedora-cisco-openh264':
  - Curl error (6): Couldn't resolve host name for https://mirrors.fedoraproject.org/metalink?repo=fedora-cisco-openh264-32&arch=x86_64 [Could not resolve host: mirrors.fedoraproject.org]
Error: Failed to download metadata for repo 'fedora-cisco-openh264': Cannot prepare internal mirrorlist: Curl error (6): Couldn't resolve host name for https://mirrors.fedoraproject.org/metalink?repo=fedora-cisco-openh264-32&arch=x86_64 [Could not resolve host: mirrors.fedoraproject.org]

docker-compose build failing for proxy container

Repo URL: https://github.com/shlomizadok/foreman-docker-compose.git
SHA: 995b90b
Steps:

  1. cd foreman-docker-compose
  2. docker-compose build

Output:
Building proxy
Step 1/9 : FROM fedora:latest
---> d7372e6c93c6
Step 2/9 : LABEL MAINTAINER="[email protected]"
---> Using cache
---> 14ca16b07d10
Step 3/9 : RUN dnf -y update
---> Using cache
---> 3c2056269408
Step 4/9 : RUN dnf -y install ruby{,-devel,gems,-irb} rubygem-{nokogiri,bundler,unf_ext,rdoc} redhat-rpm-config nodejs postgresql-devel git gcc-c++ make hostname && dnf clean all
---> Using cache
---> 89b19d4c3e23
Step 5/9 : WORKDIR /usr/src/app
---> Using cache
---> 4071b07fd07d
Step 6/9 : ENV REPO_URL=https://github.com/theforeman/smart-proxy.git
---> Using cache
---> a63bcee8256a
Step 7/9 : RUN git clone --depth=1 ${REPO_URL} . && mkdir logs
---> Using cache
---> 234dfc3bd595
Step 8/9 : RUN bundle --without bmc:krb5:libvirt:puppet_proxy_legacy:test:windows
---> Running in a9314a38373d
Don't run Bundler as root. Bundler can ask for sudo if it is needed, and
installing your bundle as root will break this application for all non-root
users on this machine.
Your Gemfile lists the gem rsec (>= 0) more than once.
You should probably keep only one of them.
While it's not a problem now, it could cause errors if you change the version of one of them later.
Your Gemfile lists the gem single_test (>= 0) more than once.
You should probably keep only one of them.
While it's not a problem now, it could cause errors if you change the version of one of them later.
Your Gemfile lists the gem rdoc (>= 0) more than once.
You should probably keep only one of them.
While it's not a problem now, it could cause errors if you change the version of one of them later.
The dependency highline (>= 0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for ruby but the dependency is only for x86-mingw32, x64-mingw32. To add those platforms to the bundle, run bundle lock --add-platform x86-mingw32 x64-mingw32.
The dependency win32-service (>= 0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for ruby but the dependency is only for x86-mingw32, x64-mingw32. To add those platforms to the bundle, run bundle lock --add-platform x86-mingw32 x64-mingw32.
Fetching gem metadata from https://rubygems.org/.........
Resolving dependencies...
Fetching rake 12.3.2
Installing rake 12.3.2
Using bundler 1.16.1
Fetching coderay 1.1.2
Installing coderay 1.1.2
Fetching concurrent-ruby 1.1.4
Installing concurrent-ruby 1.1.4
Fetching ffi 1.10.0
Installing ffi 1.10.0 with native extensions
Fetching journald-native 1.0.11
Installing journald-native 1.0.11 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

current directory:
/usr/share/gems/gems/journald-native-1.0.11/ext/journald_native
/usr/bin/ruby -r ./siteconf20190309-1-9ax80q.rb extconf.rb
checking for systemd/sd-journal.h... no
checking for -lsystemd... no
checking for sd_journal_print()... no
checking for -lsystemd-journal... no
checking for sd_journal_print()... no
creating extconf.h
creating Makefile

current directory:
/usr/share/gems/gems/journald-native-1.0.11/ext/journald_native
make "DESTDIR=" clean
rm -f
rm -f journald_native.so *.o .bak mkmf.log ..time

current directory:
/usr/share/gems/gems/journald-native-1.0.11/ext/journald_native
make "DESTDIR="
gcc -I. -I/usr/include -I/usr/include/ruby/backward -I/usr/include -I.
-DRUBY_EXTCONF_H="extconf.h" -I/usr/include -fPIC -O2 -g -pipe -Wall
-Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS
-fexceptions -fstack-protector-strong -grecord-gcc-switches
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1
-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mtune=generic
-fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC
-std=c11 -m64 -o journald_dummy.o -c journald_dummy.c
In file included from journald_dummy.c:1:
journald_native.h:37:14: error: #error Cannot include <systemd/sd-journal.h>.
Please use linux version with systemd-journal installed
#error Cannot include <systemd/sd-journal.h>. Please use linux
version with systemd-journal installed
^~~~~
journald_native.h:41:14: error: #error Required function sd_journal_print is
missing
#error Required function sd_journal_print is missing
^~~~~
journald_native.h:45:14: error: #error Required function sd_journal_sendv is
missing
#error Required function sd_journal_sendv is missing
^~~~~
journald_native.h:49:14: error: #error Required function sd_journal_perror is
missing
#error Required function sd_journal_perror is missing
^~~~~
journald_native.h:55:18: fatal error: systemd/sd-journal.h: No such file or
directory
#include <systemd/sd-journal.h>
^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:243: journald_dummy.o] Error 1

make failed, exit code 2

Gem files will remain installed in /usr/share/gems/gems/journald-native-1.0.11
for inspection.
Results logged to /usr/lib64/gems/ruby/journald-native-1.0.11/gem_make.out

An error occurred while installing journald-native (1.0.11), and Bundler cannot
continue.
Make sure that gem install journald-native -v '1.0.11' succeeds before
bundling.

In Gemfile:
logging-journald was resolved to 2.0.3, which depends on
journald-logger was resolved to 2.0.4, which depends on
journald-native
ERROR: Service 'proxy' failed to build: The command '/bin/sh -c bundle --without bmc:krb5:libvirt:puppet_proxy_legacy:test:windows' returned a non-zero code: 5

Docker Compose <= 1.14 doesn't create volume directories

Just a technical note on Docker Compose:

When you use a version <= 1.14 on a freshly cloned repository docker-compose up fails, because it can only mount Docker volumes into existing directories. Newer versions of Docker Compose do create the non-existing directories automatically.

This is easily fixed locally, though: (if you don't want to or can't upgrade to a newer version of Compose)

$ mkdir pgdata assets webpack 

Build Docker images on Docker Hub

Having build sections in our Docker Compose file makes this project a bit inflexible to use.

For example, you cannot easily exchange just a single image (as in pulling it from a registry), giving the target system the chance to quickly update just a single service; instead, you have to rebuild the image from source on your target host.

We should:

  1. Build all Docker images of this project on Docker Hub (automatically).
  2. Refer to the ready-built images from the Docker Compose file with image: directives.

Why not use official image?

In an ideal world we would re-use "official" images from the The Foreman project. However, there don't seem to be any, and the related Forklift project doesn't seem to be interested in pursuing a compatible route. Which is very unfortunate.

Add bmc support info

While this repo was very useful, it took me a while to figure out why adding BMC was not as straightforward as expected.

The steps I took trying to add BMC:

  • Adding freeipmi to dnf install command in the Dockerfile
  • remove "bmc" from bundle --without ...
  • Add a bmc.yml file to config/settings.d/

This resulted in the following error during startup
Errors detected on startup, see log for details. Exiting: cannot load such file -- rubyipmi
even though the rubyipmi gem was installed.

The fix was simply changing the command to bundle exec /usr/src/app/bin/smart-proxy in the docker-compose file. So it might be worth changing the command or mentioning the issue in "known issues"

move repository to the foreman org?

I believe it would be useful to other community members as well, keeping it at theforeman org probably will increase visibility of this effort?

thanks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.