├── .bundle └── config ├── .gitignore ├── .travis.yml ├── BUILD.md ├── CONTRIBUTING.md ├── Dockerfile ├── Gemfile ├── Gemfile.lock ├── LICENSE.md ├── MAINTAINERS.md ├── README.md ├── config.rb ├── create-post.rb ├── data ├── authors.yml ├── docs.yml ├── navigation.yml └── site.yml ├── docker.sh ├── lib ├── blog_helpers.rb ├── monkeypatch_blog_date.rb └── site_helpers.rb ├── run-server.sh ├── selinux_share.sh ├── setup.sh ├── source ├── .htaccess.haml ├── 404.html.haml ├── admin │ ├── api │ │ ├── create.html.haml │ │ ├── delete.html.haml │ │ └── update.html.haml │ ├── edit.html.haml │ └── index.html.haml ├── author.html.haml ├── blog.html.haml ├── blog │ ├── 2014-04-15-announcing-project-atomic.md │ ├── 2014-04-16-build-your-own-atomic-host-on-fedora-20.html.md │ ├── 2014-04-16-why-project-atomic.html.md │ ├── 2014-05-06-running-systemd-in-a-docker-container.html.md │ ├── 2014-05-09-moving-an-rhscl-app-to-docker-on-atomic.html.md │ ├── 2014-05-15-the-difference-between-project-atomic-and-atomic-hosts.html.md │ ├── 2014-05-23-what-s-new-in-cockpit.html.md │ ├── 2014-05-23-why-the-operating-system-will-never-die.html.md │ ├── 2014-06-10-new-fedora-based-atomic-image-available-with-docker-1-0.html.md │ ├── 2014-06-13-containers-vs-virtual-machines-is-a-fake-conflict.html.md │ ├── 2014-06-18-exploring-the-atomic-in-project-atomic.html.md │ ├── 2014-06-30-centos-atomic-host-sig-propposed.html.md │ ├── 2014-07-09-new-fedora-atomic-installable-iso.html.md │ ├── 2014-07-25-upstream-atomic-vagrant-support-for-kubernetes.html.md │ ├── 2014-08-14-cockpit-roadmap-and-contributing.html.md │ ├── 2014-08-21-build-your-own-atomic-centos-or-fedora.html.md │ ├── 2014-08-28-centos-7-alpha-builds-for-atomic.html.md │ ├── 2014-08-29-is-it-safe-a-look-at-docker-and-security-from-linuxcon.html.md │ ├── 2014-09-04-bringing-new-security-features-to-docker.html.md │ ├── 2014-09-05-centos-docker-images-updated-to-20140902.html.md │ ├── 2014-09-08-keeping-up-with-docker-security.html.md │ ├── 2014-09-11-running-syslog-within-a-docker-container.html.md │ ├── 2014-09-11-using-kubernetes-for-simple-containers-and-services.html.md │ ├── 2014-09-15-fedora-test-day-for-cockpit-tomorrow-16-september-2014.html.md │ ├── 2014-09-15-yet-another-reason-containers-don-t-contain-kernel-keyrings.html.md │ ├── 2014-09-16-docker-as-middleman.md │ ├── 2014-09-24-granting-rights-to-users-to-use-docker-in-fedora.html.md │ ├── 2014-09-26-exploring-web-apps-with-docker.html.md │ ├── 2014-10-01-atomic-rescue-mode.md │ ├── 2014-10-02-libvirtd_in_containers.html.md │ ├── 2014-10-15-containerized-directory-services-with-docker-and-freeipa.html.md │ ├── 2014-10-21-getting-started-with-cloud-init.html.md │ ├── 2014-11-04-build-your-own-atomic-updates.html.md │ ├── 2014-11-05-updated-centos-containers-available-via-docker-hub.html.md │ ├── 2014-11-06-centos-atomic-sig-image-ready-for-testing.html.md │ ├── 2014-11-19-fedora-atomic-test-day-tomorrow.html.md │ ├── 2014-11-25-docker-s-new-security-advisories-and-untrusted-images.html.md │ ├── 2014-11-25-testing-kubernetes-with-an-atomic-host.html.md │ ├── 2014-12-08-new-centos-atomic-image-updated-centos-containers-and-freeipa-4-1-2.html.md │ ├── 2014-12-10-fedora-21-goes-gold-with-atomic-images.html.md │ ├── 2014-12-18-cockpit-0-27-stable-added-to-centos-7-atomic-image.html.md │ ├── 2014-12-20-first-atomic-upgrade-for-fedora-21-atomic.html.md │ ├── 2015-01-05-speak-at-red-hat-summit-proposals-due-7-january-2015.html.md │ ├── 2015-01-07-improving-docker-error-messages.html.md │ ├── 2015-01-15-deploying-a-containerized-gitlab-instance-with-kubernetes.html.md │ ├── 2015-01-16-atomic-hackfest-at-devconf-cz.html.md │ ├── 2015-01-30-running-ovirt-guest-agent-as-privileged-container.md │ ├── 2015-03-05-red-hat-enterprise-linux-atomic-host-released.html.md │ ├── 2015-03-12-fedora-22-alpha-and-vagrant-boxes.html.md │ ├── 2015-04-02-problems-with-ping-in-containers-on-atomic-hosts.html.md │ ├── 2015-04-14-project-atomic-at-container-camp.html.md │ ├── 2015-04-21-atomic-news-fedora-22-beta-centos-update-glitch.html.md │ ├── 2015-04-22-thoughts-on-project-photon.html.md │ ├── 2015-04-22-using-environment-substitution-with-the-atomic-command.html.md │ ├── 2015-04-23-container-camp-presentation-and-slides.html.md │ ├── 2015-04-28-logging-docker-container-output-to-journald.html.md │ ├── 2015-04-28-my-letter-home-from-container-camp.html.md │ ├── 2015-04-29-hey-container-community-lets-talk-about-labels.html.md │ ├── 2015-05-08-the-problem-with-containers.html.md │ ├── 2015-05-14-announcing-the-nulecule-specification-for-composite-applications.html.md │ ├── 2015-05-18-docker-meetup-brno.md │ ├── 2015-05-19-bugfix-container-software-in-place.html.md │ ├── 2015-05-20-why-red-hat-is-shipping-docker-1-6.html.md │ ├── 2015-05-26-building-and-running-live-atomic.html.md │ ├── 2015-05-27-fedora-22-released-with-atomic-hosts.html.md │ ├── 2015-05-28-atomic-app-0-1-0.html.md │ ├── 2015-05-28-project-atomic-comes-to-japan.html.md │ ├── 2015-06-05-running-cockpit-as-a-service.html.md │ ├── 2015-06-11-see-you-at-southeast-linuxfest-self.html.md │ ├── 2015-06-15-project-atomic-online-meetup-wednesday.html.md │ ├── 2015-06-15-using-volumes-with-docker-can-cause-problems-with-selinux.html.md │ ├── 2015-06-23-centos-atomic-host-rebuild-released.html.md │ ├── 2015-06-29-notes-on-fedora-centos-and-docker-storage-drivers.html.md │ ├── 2015-06-30-creating-a-simple-bare-metal-atomic-host-cluster.html.md │ ├── 2015-07-01-project-atomic-at-containercon.html.md │ ├── 2015-07-14-docker-centos-6-and-you.html.md │ ├── 2015-07-16-follow-us-the-nulecule-has-moved.html.md │ ├── 2015-07-16-what-are-docker-none-none-images.html.md │ ├── 2015-08-05-testing-nulecule-on-debian.html.md │ ├── 2015-08-05-why-containers-are-worth-the-hype.html.md │ ├── 2015-08-10-why-we-dont-let-non-root-users-run-docker-in-centos-fedora-or-rhel.html.md │ ├── 2015-08-17-fun-with-kubenetes-and-atomicapp.html.md │ ├── 2015-08-26-running-a-containerized-cockpit-ui-from-cloud-init.html.md │ ├── 2015-09-01-using-a-spc-to-troubleshoot-containers.html.md │ ├── 2015-09-04-introducing-the-fedora-tools-image-for-fedora-atomic-host.html.md │ ├── 2015-09-10-new-centos-atomic-host-release-featuring-kubernetes-1-0.html.md │ ├── 2015-09-11-docker-daemon-command.md │ ├── 2015-09-14-introduce-atomic-reactor.html.md │ ├── 2015-09-15-combined-fedora-centos-atomic-test-day-next-week.html.md │ ├── 2015-09-21-clustering-atomic-hosts-with-kubernetes-ansible-and-vagrant.html.md │ ├── 2015-09-23-introducing-vendor-labels2.html.md │ ├── 2015-09-25-atomic-app-0-1-10.html.md │ ├── 2015-09-28-creating-custom-ostree-composes-for-atomic-testing.html.md │ ├── 2015-10-05-setting-up-skydns.html.md │ ├── 2015-10-08-updated-centos-atomic-host-tree-and-images-available.html.md │ ├── 2015-10-09-docker-brno-meetup.md │ ├── 2015-10-13-updated-spc-sysdig-container.html.md │ ├── 2015-10-14-container-roundtable-linuxcon-eu.html.md │ ├── 2015-11-03-docker-brno-meetup-2.html.md │ ├── 2015-11-19-atomic-app-0-2.html.md │ ├── 2015-11-24-centos-atomic-host-updated.html.md │ ├── 2015-12-04-fedora-atomic-host-two-week-release-ready.html.md │ ├── 2015-12-08-fedora-atomic-sssd-container.html.md │ ├── 2015-12-16-making-docker-images-write-only-in-production.html.md │ ├── 2015-12-17-ADB-1-5.html.md │ ├── 2015-12-17-atomic-app-0-3.html.md │ ├── 2015-12-17-fedora-atomic-host-two-week-release-12-15-2015-ready.html.md │ ├── 2016-01-07-how-to-run-a-more-secure-non-root-user-container.html.md │ ├── 2016-01-14-atomic-diff.html.md │ ├── 2016-01-18-understanding-docker-top-and-ps.html.md │ ├── 2016-01-19-atomic-app-0-3-1.html.md │ ├── 2016-01-21-vagrant-adbinfo-0.1.0.html.md │ ├── 2016-01-22-atomic-app-0-4-0.html.md │ ├── 2016-01-25-ADB-1.6-announcement.html.md │ ├── 2016-02-04-dont-run-yum-update-within-a-running-container.html.md │ ├── 2016-02-18-ADB-1-7.html.md │ ├── 2016-02-19-atomic-app-0-4-2.html.md │ ├── 2016-03-01-new-centos-atomic-host-images-available-for-download.html.md │ ├── 2016-03-01-project-atomic-gsoc-2016.md │ ├── 2016-03-01-skopeo-inspect-remote-images.html.md │ ├── 2016-03-01-vagrant-service-manager-0.0.3.html.md │ ├── 2016-03-02-atomic-app-0-4-3.html.md │ ├── 2016-03-04-dwalsh_selinux_containers.md │ ├── 2016-03-07-atomic-site-on-atomic-app.md │ ├── 2016-03-11-ADB-1-7-1.html.md │ ├── 2016-03-11-introducing-atomic-devmode.html.md │ ├── 2016-03-15-selinux-and-docker-part-2.md │ ├── 2016-03-16-atomic-app-044-release.md │ ├── 2016-03-16-docker-credentials-store.html.md │ ├── 2016-03-17-no-new-privs-docker.md │ ├── 2016-03-28-cockpit-099.md │ ├── 2016-03-29-how-i-wrote-compose-exec.md │ ├── 2016-03-30-daemon_option_basedevicesize.md │ ├── 2016-03-31-atomic-app-0-4-5-release.md │ ├── 2016-04-04-cockpit-100.html.md │ ├── 2016-04-07-developing-with-mesos-marathon.md │ ├── 2016-04-11-cockpit-kubernetes-volumes-0.101.html.md │ ├── 2016-04-11-new-centos-atomic-host-release-with-docker-1-9-1.html.md │ ├── 2016-04-13-running_OCI.html.md │ ├── 2016-04-14-atomic-app-0-5-0-release.html.md │ ├── 2016-04-19-cockpit-docker-restart-policy-0.102.html.md │ ├── 2016-04-26-postgresql-ha-kubernetes.html.md │ ├── 2016-04-27-k8s-adb-usage.html.md │ ├── 2016-04-28-gsoc-projects-accepted.html.md │ ├── 2016-05-02-docker-lvm-plugin.html.md │ ├── 2016-05-03-App-Development-on-OpenShift-using-ADB.md │ ├── 2016-05-09-fedora-24-test-day-tomorrow-may-10-2016.html.md │ ├── 2016-05-13-using-the-atomic-cli-to-scan-vms.html.md │ ├── 2016-05-19-introducing_commissaire.html.md │ ├── 2016-05-31-atomic-app-0-5-2-release.html.md │ ├── 2016-06-07-micro-cluster-part-1.html.md │ ├── 2016-06-10-origin-on-fedora.html.md │ ├── 2016-06-15-atomic-app-0-6-0-release.html.md │ ├── 2016-06-16-micro-cluster-part-2.html.md │ ├── 2016-06-21-docker-brno-meetup-20160615.html.md │ ├── 2016-06-28-rh-summit-demos.html.md │ ├── 2016-07-06-commissaire_video_2.html.md │ ├── 2016-07-08-cockpit_0113.html.md │ ├── 2016-07-11-docker-selinux-flag.html.md │ ├── 2016-07-12-hacking-and-extending-atomic-host.html.md │ ├── 2016-07-14-new-centos-atomic-host-releases-available-for-download.html.md │ ├── 2016-07-22-vagrant-service-manager-install-cli.html.md │ ├── 2016-07-25-working-with-containers-image-made-easy.html.md │ ├── 2016-07-27-atomic-app-0-6-2-release.html.md │ ├── 2016-07-29-download-and-get-involved-with-fedora-atomic-24.html.md │ ├── 2016-08-09-ocitools-libgen.html.md │ ├── 2016-08-16-vagrant-service-manager-1-3-0-release.html.md │ ├── 2016-08-18-docker-patches.html.md │ ├── 2016-08-30-new-centos-atomic-host-with-package-layering-support.html.md │ ├── 2016-09-12-intro-to-system-containers.md │ ├── 2016-09-15-running-kubernetes-in-containers-on-atomic.html.md │ ├── 2016-10-11-docker-brno-meetup-20160914.html.md │ ├── 2016-10-12-install-with-kickstart.html.md │ ├── 2016-10-18-new-centos-atomic-host-with-optional-docker-1-12.html.md │ ├── 2016-10-19-join-us-for-a-fedora-25-test-day-next-week-october-24-2016.html.md │ ├── 2016-10-24-playing-with-docker-logging.html.md │ ├── 2016-10-25-how-the-container-registries-prevent-information-leakage.html.md │ ├── 2016-10-27-deployment-using-ansible.html.md │ ├── 2016-10-28-atomic-events.html.md │ ├── 2016-11-22-fedora-atomic-25-released.md │ ├── 2016-11-28-cockpit-125-released.md │ ├── 2016-12-07-part1-install-origin-on-f25-atomic-host.html.md │ ├── 2016-12-09-notice-to-kubernetes-atomic-users.html.md │ ├── 2016-12-12-part2-install-origin-on-f25-atomic-host.html.md │ ├── 2016-12-13-announcing-fedora-layered-image-builds.html.md │ ├── 2016-12-22-Kubernetes-returns-to-fedora-atomic.html.md │ ├── 2016-12-22-atomic-and-containerd.md │ ├── 2017-01-09-remote-access-docker-daemon.html.md │ ├── 2017-01-10-cockpit-127.html.md │ ├── 2017-01-20-centos-atomic-jan17.html.md │ ├── 2017-01-23-cockpit-129.html.md │ ├── 2017-02-08-crio-runtimes.html.md │ ├── 2017-02-10-matching-fedora-ostree-released-content-with-each-2week-atomic-release.html.md │ ├── 2017-02-16-new-centos-atomic-host-with-updated-docker-kubernetes-and-etcd.html.md │ ├── 2017-02-16-selinux-policy-containers.html.md │ ├── 2017-02-17-fedora-layered-image-release.html.md │ ├── 2017-02-24-cockpit-132.html.md │ ├── 2017-02-27-automate-building-atomic-host.html.md │ ├── 2017-03-06-cockpit-133.html.md │ ├── 2017-03-06-fedora_atomic_2week.html.md │ ├── 2017-03-10-cockpit-134.html.md │ ├── 2017-03-14-fedora-vfad-container-policy.html.md │ ├── 2017-03-16-fedora_atomic_2week_2.html.md │ ├── 2017-03-29-fedora_atomic_mar28.html.md │ ├── 2017-04-10-contribute-to-atomic-host-doc.html.md │ ├── 2017-04-12-new-centos-atomic-host-with-updated-kube.html.md │ ├── 2017-04-18-rpm-ostree-v2017.4-released.html.md │ ├── 2017-04-19-fedora_atomic_apr18.html.md │ ├── 2017-04-24-fedora-layered-images-april.html.md │ ├── 2017-04-26-fedora_atomic_apr27.html.md │ ├── 2017-04-27-fedora-atomic-digitalocean.md │ ├── 2017-04-29-rpm-ostree-v2017.5-released.html.md │ ├── 2017-05-01-atomic-at-summit.html.md │ ├── 2017-05-03-minishift-intro.html.md │ ├── 2017-05-08-migrate-fedora-atomic-host-to-overlay2.md │ ├── 2017-05-09-system-containerized-kube.html.md │ ├── 2017-05-15-single-overlayfs-volume.html.md │ ├── 2017-05-16-fedora_atomic_may15.html.md │ ├── 2017-05-16-new-centos-atomic-host-may-2017.html.md │ ├── 2017-05-23-fedora_atomic_may23.html.md │ ├── 2017-05-24-fedora-layered-image-may2017.html.md │ ├── 2017-05-25-oo-standalone-registry.md │ ├── 2017-05-30-testing-system-containerized-kubeadm.html.md │ ├── 2017-06-02-future-plans-for-fedora-atomic-release-life-cycle.html.md │ ├── 2017-06-05-rpm-ostree-v2017.6-released.html.md │ ├── 2017-06-06-6-reasons-why-cri-o-is-the-best-runtime-for-kubernetes.html.md │ ├── 2017-06-07-fedora-atomic-june-6.html.md │ ├── 2017-06-08-creating-system-containers.html.md │ ├── 2017-06-09-using-kubeadm-with-cri-o.html.md │ ├── 2017-06-19-centos-atomic-host-june-2017.html.md │ ├── 2017-06-20-cockpit-143.html.md │ ├── 2017-06-21-centos-atomic-security-update-1705.html.md │ ├── 2017-06-22-introducing-buildah.html.md │ ├── 2017-06-26-fedora-atomic-june25.html.md │ ├── 2017-06-27-cockpit-hackfest-0617.html.md │ ├── 2017-06-28-fedora-images-june.html.md │ ├── 2017-07-06-fedora-atomic-july-5.html.md │ ├── 2017-07-07-cockpit-145.html.md │ ├── 2017-07-11-fedora-atomic-26-release.html.md │ ├── 2017-07-14-unprivileged-containers-with-bwrap-oci-and-bubblewrap.md │ ├── 2017-07-17-fedora-atomic-26-kickstarts.md │ ├── 2017-07-20-centos-atomic-july-2017.html.md │ ├── 2017-07-25-fedora-atomic-july-25.html.md │ ├── 2017-07-25-rpm-ostree-v2017.7-released.html.md │ ├── 2017-07-28-changes-to-fah-mailing-lists.html.md │ ├── 2017-07-31-fedora-atomic-25-to-26-upgrade.md │ ├── 2017-08-04-cockpit-148.html.md │ ├── 2017-08-04-crio-week-1.html.md │ ├── 2017-08-07-buildah-getting-fit.html.md │ ├── 2017-08-09-fedora-atomic-august-08.html.md │ ├── 2017-08-11-new-centos-atomic-release-and-kubernetes-system-containers-now-available.html.md │ ├── 2017-08-14-last-week-in-atomic.html.md │ ├── 2017-08-21-atomic-flock.html.md │ ├── 2017-08-24-fedora-atomic-0822.html.md │ ├── 2017-08-30-fedora-images-aug-2017.html.md │ ├── 2017-09-06-running-kubernetes-on-fedora-atomic-26.html.md │ ├── 2017-09-07-fedora-atomic-26-120.html.md │ ├── 2017-09-13-rpm-ostree-v2017.8-released.html.md │ ├── 2017-09-25-fedora-atomic-26-sept-20.html.md │ ├── 2017-09-25-new-centos-atomic-release-with-overlayfs.html.md │ ├── 2017-09-27-test-day-for-fedora-27-atomic-cloud-september-29th.html.md │ ├── 2017-10-05-fedora-atomic-26-oct-5.html.md │ ├── 2017-10-13-ostree-reboot-saga.html.md │ ├── 2017-10-17-fedora-atomic-26-oct-16.html.md │ ├── 2017-10-20-atomic-october-events.html.md │ ├── 2017-10-31-fedora-atomic-26-oct-31.html.md │ ├── 2017-11-02-getting-started-with-buildah.md │ ├── 2017-11-09-docker-usage-survey.html.md │ ├── 2017-11-14-fedora-atomic-26-to-27-upgrade.md │ ├── 2017-11-14-fedora-atomic-27-features.html.md │ ├── 2017-11-15-migrating-kubernetes-on-fedora-atomic-host-27.html.md │ ├── 2017-11-16-fedora-atomic-27-on-multiarch.md │ ├── 2017-11-17-installing-etcd-as-a-system-container.md │ ├── 2017-11-29-atomic-at-kubecon.html.md │ ├── 2017-12-01-fedora-atomic-30-nov-17.html.md │ ├── 2017-12-04-centos-atomic-1711.html.md │ ├── 2017-12-13-compose-custom-ostree.md │ ├── 2017-12-15-fedora-atomic-13-dec-17.html.md │ ├── 2017-12-20-project-atomic-docker-hub-namespace-changes.md │ ├── 2018-01-04-fedora-atomic-4-jan-18.html.md │ ├── 2018-01-10-centos-atomic-1712.html.md │ ├── 2018-01-16-buildah-blocks.html.md │ ├── 2018-01-18-fedora-atomic-18-jan-18.html.md │ ├── 2018-01-26-using-image-registries-with-buildah.md │ ├── 2018-02-01-firewalld-in-atomic-host.md │ ├── 2018-02-02-fedora-atomic-2-feb-18.html.md │ ├── 2018-02-06-fedora-atomic-workstation.html.md │ ├── 2018-02-16-fedora-atomic-16-feb-18.html.md │ ├── 2018-02-21-buildah-alpha-0-12.html.md │ ├── 2018-02-26-reintroduction-podman.html.md │ ├── 2018-02-27-buildah-builds-itself.html.md │ ├── 2018-02-28-fedora-atomic-28-feb-18.html.md │ ├── 2018-03-01-building-buildah-container-image-for-kubernetes.md │ ├── 2018-03-02-containers-w-skopeo-ostree-oci.md │ ├── 2018-03-06-the-many-ways-to-build-oci-images.md │ ├── 2018-03-08-update-kernel-arguments-on-atomic-host.html.md │ ├── 2018-03-15-fedora-atomic-15-mar-18.html.md │ ├── 2018-03-20-new-rpm-ostree-features.html.md │ ├── 2018-03-28-fedora-atomic-28-mar-18.html.md │ ├── 2018-04-02-open-source-what-a-concept.html.md │ ├── 2018-04-05-Buildah-Alpha-version-v0.16.html.md │ ├── 2018-04-09-test-day-for-fedora-28-atomic-cloud-april-11th.html.md │ ├── 2018-04-20-fedora-atomic-20-apr-18.html.md │ ├── 2018-05-01-fedora-atomic-27-to-28-upgrade.md │ ├── 2018-05-01-podman-varlink.md │ ├── 2018-05-07-atomic-at-summit.md │ ├── 2018-05-07-podman-tls.md │ ├── 2018-05-08-welcome-redhat-coreos.md │ ├── 2018-05-23-pinning-deployments-ostree-based-systems.md │ ├── 2018-05-24-podman-userns.md │ ├── 2018-06-06-building-kernel-modules-with-podman.md │ ├── 2018-06-07-problems-are-opportunities-in-disguise.md │ ├── 2018-06-11-sneak-secrets-into-containers.md │ ├── 2018-06-12-Buildah-version-v1.1.html.md │ ├── 2018-06-20-welcome-to-fedora-coreos.md │ ├── 2018-07-18-Buildah-version-v1.2.html.md │ ├── 2018-10-31-fedora-atomic-28-to-29-upgrade.md │ └── 2019-11-21-fedora-atomic-host-nearing-eol.md ├── calendar.html.haml ├── community │ ├── gsoc.html.md │ ├── index.html.haml │ └── talks.md ├── docs │ ├── atomic-host-networking.md │ ├── cockpit.md │ ├── compose-your-own-tree.md │ ├── docker-and-selinux.md │ ├── docker-building-images.md │ ├── docker-image-author-guidance.md │ ├── docker-image-orig.md │ ├── docker-storage-recommendation.md │ ├── docker_patches.md │ ├── fedora-atomic-workstation.md │ ├── fedora_atomic_bare_metal_installation.md │ ├── filesystems.md │ ├── geard.md │ ├── gettingstarted.md │ ├── index.html.haml │ ├── introduction.md │ ├── kubernetes.md │ ├── man_pages.md │ ├── os-updates.md │ ├── quickstart.md │ └── usr-bin-atomic.md ├── download │ ├── cloud.md │ ├── index.html.haml │ ├── metal.md │ └── virtualization.md ├── feed.xml.builder ├── humans.txt ├── images │ ├── 2016-12-07_origin-install-output.txt.gz │ ├── 2016-12-12-origin-install-part-2 │ │ ├── logged_in.jpeg │ │ ├── logged_in_default.jpeg │ │ ├── logged_in_user_ruby_ex.jpeg │ │ ├── login.jpeg │ │ ├── registry_console_logged_in.jpeg │ │ ├── registry_console_login.jpeg │ │ └── ruby-ex-half.jpeg │ ├── 2017-04-27_cloud-init-user-data.png │ ├── 2017-04-27_droplet-created.png │ ├── 2017-04-27_select-fedora-atomic.png │ ├── 2017-05-12-oo-standalone-registry │ │ ├── registry-console-logged-in.png │ │ ├── registry-console-pushed-centos.png │ │ ├── registry-console-pushed-fedora.png │ │ ├── registry-console-test-project.png │ │ └── registry-console.png │ ├── JSON.png │ ├── adam.jpg │ ├── apple-touch-icon-114-precomposed.png │ ├── apple-touch-icon-144-precomposed.png │ ├── apple-touch-icon-57-precomposed.png │ ├── apple-touch-icon-72-precomposed.png │ ├── atomic-devmode-boot.png │ ├── atomic-devmode-env.png │ ├── atomic_top.png │ ├── atomicapp-logger.png │ ├── banned-dm.png │ ├── bg-jumbotron.png │ ├── bind_mount_foobar_local_2.png │ ├── bind_mount_foobar_lvm_7.png │ ├── boot_screen1.png │ ├── buildah-logo.png │ ├── centos-logo.png │ ├── cloud-init-cockpit-1.png │ ├── cloud-init-cockpit-2.png │ ├── cockpit-145 │ │ ├── logs-abrt-details.png │ │ ├── logs-abrt-list.png │ │ ├── machines-delete.png │ │ ├── terminal-full-window.png │ │ └── updates-restart.png │ ├── cockpit-active-backup.png │ ├── cockpit-kubernetes-storage.png │ ├── cockpit-logical-volume-one-dialog.png │ ├── cockpit-logo.png │ ├── cockpit-resource-sliders-text.png │ ├── cockpit-storage-slider.png │ ├── cockpit.png │ ├── community.png │ ├── container-stack.png │ ├── containercamp.png │ ├── daemon_restart_5.png │ ├── dan-yawning.jpg │ ├── dangling.png │ ├── doc-build-screenshot.png │ ├── docker-brno-2016-09 │ │ ├── jkarasek.jpg │ │ ├── slide.jpg │ │ ├── tkral.jpg │ │ ├── ttomecek.jpg │ │ └── vladim.jpg │ ├── docker-d.png │ ├── docker-info-direct.png │ ├── docker-info-loop.png │ ├── docker-info-overlay.png │ ├── docker-selinux.png │ ├── docker_brno_20160615.pdf │ ├── docker_container_3.png │ ├── docker_daemon_error.png │ ├── docker_daemon_format.png │ ├── docker_daemon_start.png │ ├── docker_help.png │ ├── docker_images_2.png │ ├── docker_info_1.png │ ├── docker_info_after_restart_6.png │ ├── docker_inspect.png │ ├── docker_inspect_4.png │ ├── documentation.png │ ├── favicon.ico │ ├── favicon_base.png │ ├── fedora_container_new_base_size_8.png │ ├── fedora_pull.png │ ├── final_screen1.png │ ├── graph.png │ ├── guestbook-ftw.png │ ├── guestbook-go.png │ ├── hackfest-1.jpg │ ├── hackfest-2.jpg │ ├── hello_world.png │ ├── installation_summary1.png │ ├── jiri.jpg │ ├── lf-logo.jpg │ ├── libvirtd-simple_cropped.png │ ├── libvirtd-wclient_cropped.png │ ├── local_volume_foobar_1.png │ ├── logo-horizontal.svg │ ├── logo.png │ ├── logo.svg │ ├── lvm_volume_foobar_create_3.png │ ├── lvm_volume_inspect_5.png │ ├── lvm_volume_list_4.png │ ├── lvm_volume_rm_6.png │ ├── multicontainer.svg │ ├── new_docker_daemon_help.png │ ├── new_docker_help.png │ ├── new_fedora.png │ ├── new_fedora_container_7.png │ ├── nulecule-diagram.png │ ├── openstack-cloud-init-cockpit.png │ ├── overdrive1000.png │ ├── ovirt-freeipa-docker.png │ ├── parent-child.png │ ├── platforms.png │ ├── portable.png │ ├── registry-console.png │ ├── registry-image.png │ ├── registry-images.png │ ├── registry-rbac.png │ ├── secure-containers.png │ ├── self-logo.png │ ├── speedboat.png │ ├── subatomic_cluster_new_case.jpg │ ├── subatomic_host_cockpit_1.png │ ├── summit-booth-2016.png │ ├── vagrant-docker-dev-env.png │ ├── welcome_screen1.png │ └── wordpress-screen.png ├── index.html.haml ├── javascripts │ ├── _bootstrap-includes.js │ ├── admin.js │ ├── application.js │ ├── lib │ │ └── _copy_custom_libs_here.js │ └── vendor │ │ ├── codemirror.js │ │ ├── jquery.cookie.js │ │ ├── marked.js │ │ ├── modernizr.js │ │ ├── noconsole.js.coffee │ │ └── string_score.coffee ├── layouts │ ├── _blog_pagination.haml │ ├── _blog_post.haml │ ├── _blog_posts.haml │ ├── _eol.haml │ ├── _footer.haml │ ├── _header.haml │ ├── _nav.haml │ ├── _navbar.haml │ ├── _navbar_static_top.haml │ ├── _social.haml │ ├── _social_share.haml │ ├── admin.html.haml │ ├── basic.html.haml │ ├── docs.html.haml │ ├── layout.html.haml │ ├── page.html.haml │ └── post.html.haml ├── releases │ └── index.html.haml ├── robots.txt ├── search-results.json.haml ├── search.html.haml ├── stylesheets │ ├── 404.css.sass │ ├── _application-custom.css.sass │ ├── _bootstrap-custom.sass │ ├── _bootstrap-includes.sass │ ├── _fonts.css │ ├── application.css.sass │ ├── fonts │ │ ├── LeagueGothic-Regular.eot │ │ ├── LeagueGothic-Regular.svg │ │ ├── LeagueGothic-Regular.ttf │ │ ├── LeagueGothic-Regular.woff │ │ └── fonts.css │ ├── lib │ │ ├── admin.css.sass │ │ ├── blog.css.sass │ │ ├── blog.sass │ │ ├── docbrowser.sass │ │ ├── markdown.sass │ │ ├── mixin │ │ │ ├── grayscale.sass │ │ │ └── responsive-image.sass │ │ ├── scrollbar-on.sass │ │ ├── search.sass │ │ ├── site.sass │ │ ├── stickyfooter.sass │ │ └── svg-fallback.sass │ ├── print.css.sass │ └── vendor │ │ ├── lepture-editor.css.sass │ │ ├── main.css │ │ ├── normalize.css │ │ └── solarized-light.sass └── tag.html.haml └── test-pull.py /.bundle/config: -------------------------------------------------------------------------------- 1 | --- 2 | BUNDLE_PATH: "./vendor/gems/" 3 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Vendored gems 2 | /vendor 3 | # Ignore the build directory 4 | /build 5 | # Ignore Sass' cache 6 | /.sass-cache 7 | /.cache 8 | # Ignore .DS_store file 9 | .DS_Store 10 | # Ignore emacs .. erm its backup files.. 11 | *~ 12 | # Ignore swp file for vim 13 | *.swp 14 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: required 2 | services: 3 | - docker 4 | install: 5 | - wget https://github.com/openshift/source-to-image/releases/download/v1.1.8/source-to-image-v1.1.8-e3140d01-linux-amd64.tar.gz 6 | - tar -xf source-to-image*.tar.gz 7 | script: ./s2i build . quay.io/osas/s2i-middleman test-image 8 | 9 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM docker.io/fedora:26 2 | WORKDIR /tmp 3 | RUN dnf update -y && dnf install -y tar libcurl-devel zlib-devel patch rubygem-bundler ruby-devel git make gcc gcc-c++ redhat-rpm-config ImageMagick && dnf clean all 4 | 5 | ADD config.rb /tmp/config.rb 6 | #ADD data /tmp/data 7 | ADD Gemfile /tmp/Gemfile 8 | ADD Gemfile.lock /tmp/Gemfile.lock 9 | ADD lib /tmp/lib 10 | #ADD source /tmp/source 11 | 12 | RUN bundle install 13 | 14 | EXPOSE 4567 15 | ENTRYPOINT [ "bundle", "exec" ] 16 | CMD [ "middleman", "server" ] 17 | 18 | LABEL RUN="/usr/bin/docker run --rm -ti -p 4567:4567 \ 19 | -v \"\$PWD/source:/tmp/source:ro\" \ 20 | -v \"\$PWD/data:/tmp/data\" \ 21 | \${IMAGE}" 22 | -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- 1 | # If you have OpenSSL installed, we recommend updating 2 | # the following line to use "https" 3 | source 'https://rubygems.org' 4 | source 'https://rails-assets.org' 5 | 6 | gem "middleman", "~> 3.3.3" 7 | 8 | # In order to get SASS 3.3, compass 1.0 is needed 9 | # FIXME: Remove this once 1.0 is final (very, very soon now -- next week?) 10 | gem 'compass', '~> 1.0.0.alpha.21' 11 | 12 | # Live-reloading plugin 13 | gem "middleman-livereload" 14 | 15 | # Cross-templating language block fix for Ruby 1.8 16 | platforms :mri_18 do 17 | gem "ruby18_source_location" 18 | end 19 | 20 | # For faster file watcher updates for people using Windows 21 | gem "wdm", "~> 0.1.0", :platforms => [:mswin, :mingw] 22 | 23 | 24 | ##### 25 | # General plugins 26 | 27 | # Blog plugin 28 | gem "middleman-blog" 29 | #gem "middleman-blog-drafts" 30 | #gem "middleman-blog-authors" 31 | 32 | gem 'middleman-deploy' 33 | 34 | # Thumbnailer 35 | #gem "middleman-thumbnailer", github: "nhemsley/middleman-thumbnailer" 36 | 37 | # favicon support (favicon PNG should be 144×144) 38 | gem "middleman-favicon-maker" 39 | 40 | # HTML & XML parsing smarts 41 | gem "nokogiri" 42 | 43 | # Syntax highlighting 44 | gem "middleman-syntax" 45 | 46 | # For feed.xml.builder 47 | gem "builder", "~> 3.0" 48 | 49 | # Better JSON lib 50 | gem "oj" 51 | 52 | # Lock jQuery to 1.x, for better IE support (6 - 8) 53 | # Fixes and features are backported from 2.x to 1.x; only diff is IE support. 54 | # see http://blog.jquery.com/2013/01/15/jquery-1-9-final-jquery-2-0-beta-migrate-final-released/ 55 | gem 'rails-assets-jquery', '~> 1' 56 | 57 | # Piwik tracker 58 | gem 'middleman-piwik' 59 | 60 | 61 | ##### 62 | # Bootstrap 63 | 64 | # Bootstrap, as SASS 65 | gem "bootstrap-sass", "~> 3" 66 | 67 | 68 | ##### 69 | # Font Awesome 70 | gem 'font-awesome-middleman' 71 | 72 | ##### 73 | # Formats 74 | 75 | # less (css) 76 | gem "therubyracer" 77 | gem "less" 78 | 79 | # asciidoctor 80 | gem "asciidoctor" 81 | 82 | # mediawiki 83 | gem "wikicloth" 84 | 85 | gem "coderay" 86 | gem "stringex" 87 | 88 | # Markdown 89 | gem 'redcarpet' 90 | 91 | gem 'open-uri-cached' 92 | 93 | # RSS/Atom parsing 94 | gem "feedjira" 95 | 96 | gem "launchy" 97 | gem "slop" 98 | gem "chronic" 99 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | Unless otherwise specified, the code in the repository is available under 2 | the MIT license. 3 | 4 | --- 5 | 6 | The MIT License (MIT) 7 | 8 | Copyright (c) 2014 Red Hat, Inc. 9 | 10 | Permission is hereby granted, free of charge, to any person obtaining a copy 11 | of this software and associated documentation files (the "Software"), to deal 12 | in the Software without restriction, including without limitation the rights 13 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 14 | copies of the Software, and to permit persons to whom the Software is 15 | furnished to do so, subject to the following conditions: 16 | 17 | The above copyright notice and this permission notice shall be included in all 18 | copies or substantial portions of the Software. 19 | 20 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 21 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 22 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 23 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 24 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 25 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 26 | SOFTWARE. 27 | -------------------------------------------------------------------------------- /MAINTAINERS.md: -------------------------------------------------------------------------------- 1 | Current Maintainers as of December 2017: 2 | 3 | 1. Sanja Bonic, @sanjacloud, sanja@redhat.com 4 | 2. Josh Berkus, @jberkus, jberkus@redhat.com 5 | 3. Joe Brockmeier, @jzb, jzb@redhat.com 6 | 4. Jason Brooks, @jasonbrooks, jbrooks@redhat.com 7 | 8 | Contact the above in that order if you need something for the Atomic Site. 9 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Atomic project website 2 | 3 | Welcome to the Github repository for the code which builds www.projectatomic.io. This repo exists so that folks can contribute content to the website. 4 | 5 | The website is built with Middleman, a Ruby-based static site builder. 6 | 7 | ## Contributing 8 | 9 | Projectatomic.io welcomes your content contributions! Please see the [CONTRIBUTING.md](CONTRIBUTING.md) doc for information on how to contribute content to the site. 10 | 11 | ## Build and Test 12 | 13 | Intructions on how to build the site for testing purposes are in [BUILD.md](BUILD.md). 14 | 15 | ## Contact 16 | 17 | General discussion of the site often takes place on [atomic-devel@projectatomic.io mailing list](https://lists.projectatomic.io/mailman/listinfo/atomic-devel) or on the #atomic channel on irc.freenode.net. To contact an individual in charge of the site, please see [MAINTAINERS.md](MAINTAINERS.md). 18 | -------------------------------------------------------------------------------- /create-post.rb: -------------------------------------------------------------------------------- 1 | #!/usr/bin/ruby 2 | 3 | require 'active_support/core_ext/string' 4 | require 'launchy' 5 | require 'yaml' 6 | require 'chronic' 7 | require 'slop' 8 | 9 | # Disable ActiveSupport's UTF-8 warning 10 | I18n.enforce_available_locales = false 11 | 12 | banner = 'Usage: ' + __FILE__ + ' [options] "Blog title here."' 13 | 14 | # Command line options are parsed using Slop 15 | opts = Slop.parse!(help: true, ignore_case: true, banner: banner) do 16 | on 'a', 'author', 'Author name', argument: :required, default: ENV['USER'] 17 | on 'd', 'date', 'Custom datetime', argument: :required, default: Time.now.strftime('%F %T %Z') 18 | on 'e', 'editor', 'Custom editor', argument: :required, default: ENV['EDITOR'] 19 | on 't', 'tags', 'Comma-separated list of tags', argument: :required 20 | on 'n', 'no-browser', 'Disable browser' 21 | end 22 | 23 | # Since we're using 'parse!', Slop removes the flags from ARGV, 24 | # so we're left with the title (either as a string or in parts) 25 | title = ARGV.join(' ').strip 26 | 27 | # Simply display usage and exit if there's no title provided 28 | if title.empty? 29 | puts opts.help 30 | exit 31 | end 32 | 33 | # Normalize CSV 34 | tags = opts[:tags] ? opts[:tags].gsub(/,\s*/, ', ') : nil 35 | 36 | # Frontmatter 37 | meta = { 38 | 'title' => title, 39 | 'author' => opts[:author], 40 | 'tags' => tags, 41 | 'date' => (Chronic.parse(opts[:date]) || Time.now).strftime('%F %T %Z') 42 | } 43 | 44 | content = "#{meta.to_yaml}---\n\n\n" 45 | 46 | # File values 47 | root = File.dirname(__FILE__) 48 | ext = 'html.md' 49 | path = "#{root}/source/blog" 50 | file = "#{meta['date'].to_date}-#{title.parameterize}" 51 | file_full = "#{path}/#{file}.#{ext}" 52 | 53 | # URL values 54 | date_parts = 2 55 | date_urlfrag = meta['date'].to_date.to_s.split(/-/).take(date_parts).join('/') 56 | file_urlfrag = "#{date_urlfrag}/#{title.parameterize}" 57 | url = "http://0.0.0.0:4567/blog/#{file_urlfrag}" 58 | 59 | # Save the file 60 | File.write file_full, content 61 | puts "Created #{file_full}" 62 | 63 | # Open file in editor 64 | if opts[:editor] 65 | # Use $EDITOR or --editor 66 | exec opts[:editor], file_full 67 | else 68 | # Fall back to xdg-open (or platform equiv) 69 | Launchy.open "#{file_full}" 70 | end 71 | 72 | # View file in a webpage 73 | Launchy.open url unless opts['no-browser'] 74 | -------------------------------------------------------------------------------- /data/docs.yml: -------------------------------------------------------------------------------- 1 | # This is the navigation for Documentation browser 2 | - First Steps: 3 | Introduction: /docs/introduction 4 | Quick Start Guide: /docs/quickstart 5 | Bare Metal Installation (Fedora): /docs/fedora_atomic_bare_metal_installation 6 | - In Depth: 7 | rpm-ostree OS Update System: /docs/os-updates 8 | Setting Up Storage: /docs/docker-storage-recommendation 9 | Supported Filesystems: /docs/filesystems 10 | Building Images: /docs/docker-building-images 11 | Image Author Guidance: /docs/docker-image-author-guidance 12 | About SELinux: /docs/docker-and-selinux 13 | Atomic Host Networking: /docs/atomic-host-networking 14 | - Contributing: 15 | How to Contribute: /docs/#contribute 16 | -------------------------------------------------------------------------------- /data/navigation.yml: -------------------------------------------------------------------------------- 1 | - Get Started: "/download" 2 | - Documentation: "/docs" 3 | - Developer Community: "/community" 4 | - Talks: "/community/talks" 5 | - On GitHub: "https://github.com/projectatomic/" 6 | - Blog: "/blog" 7 | - Twitter: "http://www.twitter.com/projectatomic" 8 | - RSS: "/blog/feed.xml" 9 | -------------------------------------------------------------------------------- /docker.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -euo pipefail 3 | 4 | # install everything in a docker container based on Fedora 25 5 | # permit to have the same env on any system without any issue 6 | 7 | # set SElinux context to allow docker to read the source directory 8 | chcon -Rt svirt_sandbox_file_t source/ 9 | chcon -Rt svirt_sandbox_file_t data/ 10 | 11 | # requires docker and being in the right group 12 | docker build -t middleman . 13 | atomic run middleman 14 | -------------------------------------------------------------------------------- /lib/blog_helpers.rb: -------------------------------------------------------------------------------- 1 | # Various helpers to enhance Middleman-based blogging 2 | class BlogHelpers < Middleman::Extension 3 | def initialize(app, options_hash = {}, &block) 4 | require 'oj' 5 | require 'digest/md5' 6 | 7 | super 8 | end 9 | 10 | helpers do 11 | def author_name(nickname) 12 | data.authors[nickname] ? data.authors[nickname].name : nickname 13 | end 14 | 15 | def author_link(nickname, text = author_name(nickname)) 16 | link_to text, "/blog/author/#{nickname.parameterize.downcase}/" 17 | end 18 | 19 | def author_card(nickname) 20 | return @author_card[nickname] if @author_card 21 | 22 | @author_card ||= {} 23 | author = data.authors[nickname] 24 | twitter_link = '[@\1](https://twitter.com/\1)' 25 | 26 | @author_card[nickname] = if author && author['description'] 27 | desc = author['description'].dup 28 | desc.gsub!(/@(\w+)/, twitter_link) 29 | markdown_to_html desc 30 | end 31 | 32 | author_card nickname 33 | end 34 | 35 | def author_gravatar(nickname) 36 | if @author_gravatar && defined? @author_gravatar[nickname] 37 | return @author_gravatar[nickname] 38 | end 39 | 40 | @author_gravatar ||= {} 41 | 42 | author = data.authors[nickname] 43 | 44 | return unless author['gravatar'] || author['email'] 45 | 46 | g_hash = author['gravatar'] || Digest::MD5.hexdigest(author['email']) 47 | g_json = open("http://gravatar.com/#{g_hash}.json").read rescue nil 48 | 49 | @author_gravatar[nickname] = Oj.load g_json if author && g_json 50 | 51 | author_gravatar nickname 52 | end 53 | 54 | def author_photo(nickname) 55 | profile = author_gravatar nickname 56 | 57 | image_tag profile['entry'][0]['thumbnailUrl'] if profile 58 | end 59 | end 60 | end 61 | 62 | ::Middleman::Extensions.register(:blog_helpers, BlogHelpers) 63 | -------------------------------------------------------------------------------- /lib/monkeypatch_blog_date.rb: -------------------------------------------------------------------------------- 1 | ## Monkeypatch: make mismatched dates fail gracefully, not bomb out 2 | # 3 | # Original code is at: 4 | # https://github.com/middleman/middleman-blog/blob/master/lib/middleman-blog/blog_article.rb#L179 5 | # 6 | # (Please update if the code differs) 7 | 8 | Middleman::Blog::BlogArticle.module_eval do 9 | def date 10 | return @_date if @_date 11 | 12 | frontmatter_date = data['date'] 13 | 14 | # First get the date from frontmatter 15 | @_date = if frontmatter_date.is_a? Time 16 | frontmatter_date.in_time_zone 17 | else 18 | Time.zone.parse(frontmatter_date.to_s) 19 | end 20 | 21 | # Next figure out the date from the filename 22 | source_vars = blog_data.source_template.variables 23 | 24 | if source_vars.include?('year') && 25 | source_vars.include?('month') && 26 | source_vars.include?('day') 27 | 28 | filename_date = Time.zone.local path_part('year').to_i, 29 | path_part('month').to_i, 30 | path_part('day').to_i 31 | 32 | if @_date 33 | unless @_date.to_date == filename_date.to_date 34 | # Don't cause an error here; just fallback to using the 35 | # metadata date 36 | 37 | puts "Warning: Frontmatter date (#{@_date}) mismatch in #{path}" 38 | end 39 | else 40 | @_date = filename_date.to_time.in_time_zone 41 | end 42 | end 43 | 44 | unless @_date 45 | fail "Blog post #{path} needs a date in its filename or frontmatter" 46 | end 47 | 48 | @_date 49 | end 50 | end 51 | -------------------------------------------------------------------------------- /run-server.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | bundle install --quiet && bundle exec middleman $@ 4 | -------------------------------------------------------------------------------- /selinux_share.sh: -------------------------------------------------------------------------------- 1 | #/bin/bash 2 | 3 | #tell SELinux to share the Data and Source directories 4 | #with the container 5 | 6 | chcon -Rt svirt_sandbox_file_t source/ 7 | chcon -Rt svirt_sandbox_file_t data/ 8 | -------------------------------------------------------------------------------- /setup.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | git submodule init && git submodule update 4 | 5 | sudo dnf install -y ruby-devel rubygems-devel gcc-c++ curl-devel rubygem-bundler patch make tar xz-devel zlib-devel libxml2-devel ImageMagick redhat-rpm-config 6 | 7 | bundle install 8 | -------------------------------------------------------------------------------- /source/404.html.haml: -------------------------------------------------------------------------------- 1 | --- 2 | title: Page not found 3 | --- 4 | 5 | %h1 6 | Not found 7 | %span :( 8 | %p Sorry, but the page you were trying to view does not exist. 9 | %p It looks like this was the result of either: 10 | %ul 11 | %li a mistyped address 12 | %li an out-of-date link 13 | -------------------------------------------------------------------------------- /source/admin/api/create.html.haml: -------------------------------------------------------------------------------- 1 | --- 2 | layout: false 3 | --- 4 | 5 | :ruby 6 | export = "" 7 | content = "" 8 | 9 | results = req.env['rack.request.form_hash'] 10 | 11 | if results 12 | slug = results['title'].to_s.strip.gsub(/'/,'').parameterize 13 | timestamp = Time.now 14 | filename = "#{root}/#{source}#{blog.options.prefix}#{timestamp.to_date}-#{slug}.html.md" 15 | 16 | meta = { 17 | 'title' => results['title'], 18 | 'author' => results['author'], 19 | 'date' => timestamp.in_time_zone(Time.zone).strftime('%F %T %Z'), 20 | 'published' => false 21 | } 22 | 23 | yamlized = meta.to_yaml.gsub(/^----$/, '---').gsub(/^date: '(.*)'$/, 'date: \1') 24 | 25 | export = "#{yamlized}---\n\n#{content}" 26 | 27 | File.write filename, export if slug 28 | end 29 | 30 | = {date: timestamp.to_date, slug: slug}.to_json 31 | -------------------------------------------------------------------------------- /source/admin/api/delete.html.haml: -------------------------------------------------------------------------------- 1 | --- 2 | layout: false 3 | --- 4 | 5 | :ruby 6 | results = req.env['rack.request.form_hash'] 7 | 8 | unless results.empty? 9 | path = results['path'] 10 | filename = results['filename'] 11 | 12 | if path && filename 13 | File.delete "#{path}/#{filename}" 14 | `git rm "#{path}/#{filename}"` 15 | end 16 | end 17 | 18 | = results.inspect 19 | -------------------------------------------------------------------------------- /source/admin/api/update.html.haml: -------------------------------------------------------------------------------- 1 | --- 2 | layout: false 3 | --- 4 | 5 | :ruby 6 | results = req.env['rack.request.form_hash'] 7 | 8 | meta, content = results['meta'], results['content'] 9 | 10 | if meta && content 11 | slug = results['slug'] 12 | path = results['path'] 13 | date = meta['date'].to_time.in_time_zone(Time.zone).to_date 14 | old_filename = results['filename'] 15 | new_filename = "#{date}-#{slug}.html.md" 16 | 17 | meta.reject! {|k, v| v.empty?} 18 | 19 | meta.each do |k, v| 20 | v = true if v == "on" 21 | v = false if v == "off" 22 | meta[k] = v 23 | end 24 | 25 | meta['date'] = meta['date'].to_time.in_time_zone(Time.zone).to_s 26 | 27 | # Ensure published state is preserved (and reversed, as published != draft) 28 | meta['published'] = !meta['published'] 29 | 30 | yamlized = meta.to_yaml.gsub(/^----$/, '---').gsub(/^date: '(.*)'$/, 'date: \1') 31 | content = content.gsub(/\r\n/, "\n") 32 | 33 | if old_filename != new_filename 34 | File.delete "#{path}/#{old_filename}" 35 | `git rm "#{path}/#{old_filename}"` 36 | end 37 | 38 | File.write "#{path}/#{new_filename}", "#{yamlized}---\n\n#{content}" 39 | `git add "#{path}/#{new_filename}"` 40 | end 41 | 42 | 43 | = {date: date, slug: slug}.to_json if meta 44 | -------------------------------------------------------------------------------- /source/author.html.haml: -------------------------------------------------------------------------------- 1 | - if defined? author 2 | 3 | - if author_card author 4 | %h2 5 | About 6 | = author_name author 7 | = author_card author 8 | 9 | - else 10 | %h2 11 | Articles from 12 | = author_name author 13 | 14 | - if pages 15 | 16 | - pages.each do |page| 17 | - if (defined? page.title) && (defined? page.published && page.published?) 18 | 19 | -#%li= page.public_methods 20 | = partial :blog_post, locals: {article: page, summarize: 400} 21 | 22 | - else 23 | 24 | .authors-list 25 | 26 | -# Sort by number of blog articles, then author's full name 27 | - blog.articles.group_by {|p| p.data.author}.sort_by {|a, p| [-p.count, author_name(a).downcase]}.each do |author, pages| 28 | 29 | .author-list 30 | 31 | %h2= author_name author 32 | 33 | - if author_card author 34 | %p= author_card author 35 | 36 | %ul 37 | - pages.each do |page| 38 | %li= link_to page.title, page.url 39 | -------------------------------------------------------------------------------- /source/blog.html.haml: -------------------------------------------------------------------------------- 1 | --- 2 | title: Project Atomic News 3 | pageable: true 4 | --- 5 | 6 | - content_for :head do 7 | %link(href="/blog/feed.xml" rel="alternate" title="Atom feed" type="application/atom+xml") 8 | 9 | %section.blog-archive 10 | 11 | %h1 Project News 12 | 13 | = partial :blog_posts, locals: locals 14 | -------------------------------------------------------------------------------- /source/blog/2014-05-06-running-systemd-in-a-docker-container.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: jzb 3 | layout: post 4 | comments: true 5 | title: Running systemd in a Docker Container 6 | date: 2014-05-06 19:50 UTC 7 | tags: 8 | - systemd 9 | - Docker 10 | - cgroups 11 | categories: 12 | - Blog 13 | --- 14 | Ever wondered if you can get `systemd` running in a Docker container? Apparently Dan Walsh did, [and spent some time getting it to work](http://rhatdan.wordpress.com/2014/04/30/running-systemd-within-a-docker-container/). 15 | 16 | > While working with Docker, I looked at the great work that Scott Collier was doing for getting services to run within a container. Scott provides the fedora-dockerfiles package in docker with lots of “Dockerfile” examples. You can build Docker images by running “docker build” on these examples. 17 | 18 | > It seemed a little difficult, and wondered if getting systemd to run within a docker container, as I did with virt-sandbox-service, might make this simpler. 19 | 20 | > The Docker Model suggests that it is better to run a single service within a container. If you wanted to build an application that required an Apache service and a MariaDB database, you should generate two different containers. Some people insist on running multiple services within a container, and for this Docker suggested using the supervisord tool. In RHEL we do not want to support supervisord, since it is written in Python, and do not want to pull a Python requirement into containers, and it is just a package used to monitor multiple services. We already have a tool for monitoring multiple services called systemd. 21 | 22 | After a little trial and error, Dan got `systemd` working within a container on Fedora Rawhide, and expects it will work on Fedora 20 or RHEL 7 (when it's released). Give it a spin and [let Dan know](http://rhatdan.wordpress.com/2014/04/30/running-systemd-within-a-docker-container/) how it works out for you. 23 | -------------------------------------------------------------------------------- /source/blog/2014-05-09-moving-an-rhscl-app-to-docker-on-atomic.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: jzb 3 | comments: true 4 | layout: post 5 | title: Moving an RHSCL app to Docker on Atomic 6 | date: 2014-05-09 19:44 UTC 7 | tags: 8 | - SCL 9 | - Software Collections 10 | - SoftwareCollections.org 11 | categories: 12 | - Blog 13 | --- 14 | As I've mentioned a number of times when I've spoken about [Software Collections](http://softwarecollections.org) (SCLs), containers and SCLs are *not* mutually exclusive. In fact, SCLs promise to be really important for a lot of developers in building containers for production. 15 | 16 | Langdon White has written up a [great post on how to move an RHSCL app to Docker](http://developerblog.redhat.com/2014/05/07/moving-app-to-docker-on-atomic/) using an Atomic host: 17 | 18 | > Ok, now that Atomic is installed, I need to go make a container. After a few fits and starts, mostly related to pathing issues while using the "RUN" command, I got a decent Dockerfile working. You "run" this file by using the 'docker build' command. Later, you "make the app go" with the 'docker run' command. 19 | 20 | Check out the rest of Langdon's post on [the Red Hat Developer Blog](http://developerblog.redhat.com/2014/05/07/moving-app-to-docker-on-atomic/). 21 | -------------------------------------------------------------------------------- /source/blog/2014-05-23-what-s-new-in-cockpit.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: stef 3 | comments: true 4 | layout: post 5 | title: "What's New in Cockpit?" 6 | date: 2014-05-23 14:55 UTC 7 | tags: 8 | - Cockpit 9 | - Atomic 10 | - Upstream 11 | categories: 12 | - Blog 13 | --- 14 | Cockpit 0.9 has been released and includes some major milestones for the project. With Cockpit 0.8, we'd moved beyond the prototype stage, and have closed a bunch of security and stability issues. 15 | 16 | With Cockpit 0.9 we added continuous integration tests for running on SELinux. We want to be the first to know if Cockpit breaks due to SELinux and not find out about it because someone ran into a problem somewhere. At least that's the goal! 17 | 18 | One of the most notable changes is that Cockpit now respects the system access privileges and won't provide a way to escalate privileges without going through the usual channels like `polkit` or `sudo`. 19 | 20 | Because of this some features that used to work for accounts in the wheel group, now only work as root. We're working on fixing this regression by fixing system default policies in the various services (like NetworkManager) that we access. 21 | 22 | ## Still Evolving, Be Careful 23 | 24 | Soon to come down the pipe are Docker image pull support in 0.10, and soon a redone Networking configuration page. 25 | 26 | Cockpit has changed a bit in the jump to 0.8, and a lot of it runs unprivileged now. We've built our own quite restrictive SELinux policy, and will be running test suites against this policy and updating it to make changes. 27 | 28 | Our goal is that having Cockpit 0.8 or later installed should pose no security risk. That said, Cockpit is still in rapid development, and you should still be careful when using it to manage your system. 29 | 30 | Want to take a look at Cockpit, or provide feedback? Check it out [on GitHub](https://github.com/cockpit-project/cockpit/releases), and open an [issue if you find any problems](https://github.com/cockpit-project/cockpit/issues). 31 | 32 | We hope to have a new Atomic Fedora 20-based image up soon that will include the latest Docker, Cockpit, and other updates. 33 | -------------------------------------------------------------------------------- /source/blog/2014-06-10-new-fedora-based-atomic-image-available-with-docker-1-0.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | comments: true 3 | layout: post 4 | author: jzb 5 | title: New Fedora-based Atomic Image Available with Docker 1.0 6 | date: 2014-06-10 13:59 UTC 7 | tags: 8 | - Atomic 9 | - Docker 10 | - Cockpit 11 | categories: 12 | - Blog 13 | --- 14 | Yesterday at DockerCon, the Docker folks [announced the 1.0 release](http://blog.docker.com/2014/06/dockercon-day-1-keynote-highlights/) along with a number of other interesting announcements. To make sure that the Atomic community has the latest and greatest tools to work with, we've rolled up a new image based on Fedora 20 with Docker 1.0 and a number of other updates. 15 | 16 | Note that some of the packages in this image come from updates-testing or Copr builds. A big thanks to Jason Brooks for managing the builds and the Copr packages! 17 | 18 | ## What's New 19 | 20 | In addition to Docker 1.0 (see the [official Docker post on that](http://blog.docker.com/2014/06/its-here-docker-1-0/)), the latest release of the Atomic proof-of-concept image includes: 21 | 22 | * Cockpit 0.9 23 | * Cockpit no longer needs SELinux disabled 24 | * Cockpit runs mostly unprivileged now 25 | * Cockpit listens on port 1001 26 | * Updated GearD 27 | * Additional packages to make working with the image easier (e.g. GNU Screen) 28 | 29 | See also [Stef Walter's post on Cockpit](http://www.projectatomic.io/blog/2014/05/what-s-new-in-cockpit/). A number of other packages have also been updated. If you're already testing Atomic, you can update to the latest with `rpm-ostree upgrade` and then `systemctl reboot`. 30 | 31 | If you haven't tried it yet, you can grab the newest images for KVM [20140609.qcow2.xz](http://rpm-ostree.cloud.fedoraproject.org/project-atomic/images/f20/qemu/) or VirtualBox [20140609.vdi.bz2](http://rpm-ostree.cloud.fedoraproject.org/project-atomic/images/f20/vbox/). Be sure to check out the [Get Started with Atomic page](http://www.projectatomic.io/download/) as well. 32 | 33 | Have questions? Come find us on Freenode in the #atomic channel, or [ask questions on Ask.ProjectAtomic.io](http://ask.projectatomic.io/en/questions/). 34 | -------------------------------------------------------------------------------- /source/blog/2014-08-14-cockpit-roadmap-and-contributing.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: stef 3 | comments: true 4 | layout: post 5 | title: Cockpit Roadmap and Contributing 6 | date: 2014-08-14 09:22 UTC 7 | tags: 8 | - Cockpit 9 | - Orchestration 10 | - Community 11 | categories: 12 | - Blog 13 | --- 14 | These days it's easier than ever to contribute to Cockpit. Here's how. 15 | 16 | Make sure you have it installed and running. Then checkout the cockpit sources and link the modules directory into your home directory. 17 | 18 | $ git clone https://github.com/cockpit-project/cockpit.git 19 | $ mkdir -p ~/.local/share 20 | $ ln -snf $(pwd)/cockpit/modules ~/.local/share/cockpit 21 | 22 | Now log into Cockpit with your own user login. Any changes you make in the modules subdirectory of the cockpit javascript or HTML that you checked out, should be visible immediately after a refresh. 23 | 24 | If you want to hack on other parts of Cockpit, such as the backend, there's a handy guide here: 25 | 26 | [https://github.com/cockpit-project/cockpit/blob/master/HACKING.md](https://github.com/cockpit-project/cockpit/blob/master/HACKING.md) 27 | 28 | You can file issues you run into here: 29 | 30 | [https://github.com/cockpit-project/cockpit/issues/new](https://github.com/cockpit-project/cockpit/issues/new) 31 | 32 | And finally you can see what we're working on at our Trello board: 33 | 34 | [https://trello.com/b/mtBhMA1l/cockpit](https://trello.com/b/mtBhMA1l/cockpit) 35 | 36 | Have fun! 37 | -------------------------------------------------------------------------------- /source/blog/2014-08-28-centos-7-alpha-builds-for-atomic.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: jzb 3 | comments: true 4 | layout: post 5 | title: CentOS 7 Alpha Builds for Atomic 6 | date: 2014-08-28 17:48 UTC 7 | tags: 8 | - CentOS 9 | - Atomic 10 | - Testing 11 | categories: 12 | - Blog 13 | --- 14 | Yesterday, Karanbir Singh [announced an alpha-quality build of CentOS 7 Atomic](http://lists.centos.org/pipermail/centos-devel/2014-August/011784.html) that's suitable for developing rpm-ostree tools and helping the SIG get started. 15 | 16 | As KB points out, the images contain unsigned content that's produced outside the CentOS.org build system. You should be able to run Docker containers just fine, but it doesn't yet include Cockpit or Kubernetes packages. 17 | 18 | Also, there's not an upstream ostree repo yet, but KB plans to set up a repo set up under cloud.centos.org soon. Even better, he plans to start running builds every two days as the content stabilizes, and eventually get the builds up on CentOS.org. 19 | 20 | Please give it a whirl, though, and report any problems found to the [CentOS-devel](http://lists.centos.org/mailman/listinfo/centos-devel) mailing list. 21 | -------------------------------------------------------------------------------- /source/blog/2014-09-04-bringing-new-security-features-to-docker.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: jzb 3 | layout: post 4 | comments: true 5 | title: Bringing new security features to Docker 6 | date: 2014-09-04 21:44 UTC 7 | tags: 8 | - Docker 9 | - SELinux 10 | - RHEL 11 | categories: 12 | - Blog 13 | --- 14 | A great follow-up to my post about [Jérôme Petazzoni's post on Docker and security](http://www.projectatomic.io/blog/2014/08/is-it-safe-a-look-at-docker-and-security-from-linuxcon/), Dan Walsh has a post up on OpenSource.com explaining just what's being done about Docker security. 15 | 16 | Says Dan, "Docker, Red Hat, and the open source community are working together to make Docker more secure. When I look at security containers, I am looking to protect the host from the processes within the container, and I'm also looking to protect containers from each other. With Docker we are using the layered security approach, which is 'the practice of combining multiple mitigating security controls to protect resources and data.' 17 | 18 | Basically, we want to put in as many security barriers as possible to prevent a break out. If a privileged process can break out of one containment mechanism, we want to block them with the next. With Docker, we want to take advantage of as many security mechanisms of Linux as possible." 19 | 20 | [Read the full post over on OpenSource.com. »](http://opensource.com/business/14/9/security-for-docker) 21 | -------------------------------------------------------------------------------- /source/blog/2014-09-05-centos-docker-images-updated-to-20140902.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: jperrin 3 | layout: post 4 | comments: true 5 | title: CentOS Docker Images updated to 20140902 6 | date: 2014-09-05 19:53 UTC 7 | tags: 8 | - CentOS 9 | - Docker 10 | categories: 11 | - Blog 12 | --- 13 | Some fresh Docker fun as we head into the weekend! The [CentOS images in the Docker index](https://registry.hub.docker.com/_/centos/) have been bumped to 20140902. 14 | 15 | ## Fixes 16 | 17 | These updates bring the following fixes: 18 | 19 | 1. Add CentOS-5 image, with SELinux patch (thanks to Dan Walsh and Miroslav Grepl!) 20 | 21 | 2. CentOS-7 image includes a `fakesystemd` package instead of the distro provided systemd. This should resolve a number of the udev and/or pid-1 errors users were seeing. This package is only useful for docker, and **will** break other installs. 22 | 23 | 3. Images now contain a new file, `/etc/BUILDTIME`, to reference when the image was created/published. 24 | 25 | 4. Includes recent updates current to 20140902. 26 | 27 | ## More info 28 | 29 | For detailed information or to see the code differences used in building the images, please see: [https://github.com/CentOS/sig-cloud-instance-build](https://github.com/CentOS/sig-cloud-instance-build). 30 | -------------------------------------------------------------------------------- /source/blog/2014-09-08-keeping-up-with-docker-security.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: dwalsh 3 | layout: post 4 | title: Keeping Up with Docker Security 5 | date: 2014-09-08 19:15 UTC 6 | tags: 7 | - Docker 8 | - Security 9 | - SELinux 10 | categories: 11 | - Blog 12 | --- 13 | I've been working on the Project Atomic team at Red Hat on Security for Docker containers. In order to get the word out I have been writing a series of blogs on Docker Security for OpenSource.com. I've written two so far, and hope to have the third done soon. 14 | 15 | The [first post](http://opensource.com/business/14/7/docker-security-selinux) covers the fact that a privileged process within a container is the same from a security point of view as the security of a privileged process outside of a container. The idea I am trying to get across is to set up your application services the same way inside of containers as out, and **don't rely on container technology to protect you**. 16 | 17 | The [second post](https://opensource.com/business/14/9/security-for-docker) covers everything that has been put into Docker to try to control the privileged and unprivileged processes within a container. We have things like Read Only File Systems, Dropped capabilities, SELinux, Control over device nodes *etc.* The cool part of this is it adds a lots of nice new security over the containerized service, but (see "Are Docker containers really secure?"), you still want to only use trusted applications and drop privileges as quickly as possible. 18 | 19 | The last post on OpenSource.com will cover the next group of features we want to add to Docker to make it more secure. 20 | 21 | After publishing the first two articles SDTimes contacted me to do an interview on Docker Security, which they published [today as "How Red Hat and the open-source community are fortifying Docker"](http://sdtimes.com/red-hat-open-source-community-fortifying-docker/). 22 | 23 | Finally, the presentation I gave at DockerCon discussing [Docker and SELinux](https://www.youtube.com/watch?v=zWGFqMuEHdw) is available on YouTube. Continue watching here for additional Docker security information! 24 | -------------------------------------------------------------------------------- /source/blog/2014-09-11-running-syslog-within-a-docker-container.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: dwalsh 3 | comments: true 4 | layout: post 5 | title: Running Syslog Within a Docker Container 6 | date: 2014-09-11 20:06 UTC 7 | tags: 8 | - Syslog 9 | - Docker 10 | - RHEL 11 | - systemd 12 | - journald 13 | categories: 14 | - Blog 15 | --- 16 | Recently I received a [bug report](https://bugzilla.redhat.com/show_bug.cgi?id=1139734) on Docker complaining about using rsyslogd within a container. 17 | 18 | The user ran a RHEL7 container, installed rsyslog, started the daemon, and then sent a logger message, and nothing happened. 19 | 20 | ``` 21 | # docker run -it --rm rhel /bin/bash 22 | # yum -y install rsyslog 23 | # /usr/sbin/rsyslogd 24 | # logger "this is a test" 25 | ``` 26 | 27 | No message showed up in `/var/log/messages` within the container, or on the host machine for that matter. 28 | 29 | The user then looked and noticed that `/dev/log` did not exist and this was where logger was writing the message. The user thought this was a bug. 30 | 31 | The problem was that in RHEL7 and Fedora we now use journald, which listens on `/dev/log` for incoming messages. In RHEL7 and Fedora, rsyslog actually reads messages from the journal via its API by default. 32 | 33 | But not all docker containers run systemd and journald. (Most don't). In order to get the rsyslogd to work the way the user wanted, he would have to modify the configuration file, `/etc/rsyslogd.conf`: 34 | 35 | * In `/etc/rsyslog.conf` remove `$ModLoad imjournal`. 36 | * Set `$OmitLocalLogging` to `off`. 37 | * Make sure `$ModLoad imuxsock` is present. 38 | * Also comment out: `$IMJournalStateFile imjournal.state`. 39 | 40 | After making these changes rsyslogd will start listening on `/dev/log` within the container and the logger messages will get accepted by rsyslogd and written to `/var/log/messages` within the container. 41 | 42 | If you wanted to logging messages to go to the host logger, you could "volume" mount `/dev/log` into the container. 43 | 44 | ``` 45 | # docker run -v /dev/log:/dev/log -it --rm rhel /bin/bash 46 | # logger "this is a test" 47 | ``` 48 | 49 | The message should show up in the host's journalct log, and if you are running rsyslog on the host, the message should end up in `/var/log/messages`. 50 | -------------------------------------------------------------------------------- /source/blog/2014-09-11-using-kubernetes-for-simple-containers-and-services.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: jzb 3 | comments: true 4 | layout: post 5 | title: Using Kubernetes for Simple Containers and Services 6 | date: 2014-09-11 18:47 UTC 7 | tags: 8 | - Kubernetes 9 | - MongoDB 10 | - Docker 11 | - AMQP Broker 12 | - Pulp 13 | - QPID 14 | - Cluster 15 | categories: 16 | - Blog 17 | --- 18 | Mark Lamourine is working on an excellent series of posts that demonstrate how you'd use [Kubernetes](https://github.com/GoogleCloudPlatform/kubernetes) to run services using Docker containers. The latest is [Kubernetes: Simple Containers and Services](http://cloud-mechanic.blogspot.com/2014/09/kubernetes-simple-containers-and.html). 19 | 20 | The most recent post explores creating the subsidiary services for a [Pulp](http://www.pulpproject.org/) service within a Kubernetes cluster: 21 | 22 | READMORE 23 | 24 | > As mentioned elsewhere, Kubernetes is a service which is designed to bind together a cluster of container hosts, which can be regular hosts running the etcd and kubelet daemons or they can be specialized images like Atomic or CoreOS. They can be private or public services such as Google Cloud 25 | 26 | > For Pulp, I need to place a MongoDB and a QPID container within a Kubernetes cluster and create the infrastructure so that clients can find it and connect to it. For each of these I need to create a Kubernetes Service and a Pod (group of related containers). 27 | 28 | Note that the latest post builds on this series: 29 | 30 | * [Intro to Containerized Applications: Docker and Kubernetes](http://cloud-mechanic.blogspot.com/2014/08/intro-to-containerized-applications.html) 31 | * [Docker: A simple service container example with MongoDB](http://cloud-mechanic.blogspot.com/2014/08/docker-simple-service-container-example.html) 32 | * [Docker: A QPID Message Broker Container](http://cloud-mechanic.blogspot.com/2014/09/docker-qpid-message-broker-container.html) 33 | 34 | Keep an eye on Mark's blog "[Under the Hood of Cloud Computing](http://cloud-mechanic.blogspot.com/) for future installments. 35 | -------------------------------------------------------------------------------- /source/blog/2014-09-15-fedora-test-day-for-cockpit-tomorrow-16-september-2014.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: jzb 3 | layout: post 4 | comments: true 5 | title: "Fedora Test Day for Cockpit Tomorrow (16 September 2014)" 6 | date: 2014-09-15 16:23 UTC 7 | tags: 8 | - Cockpit 9 | - Fedora 10 | categories: 11 | - Blog 12 | --- 13 | The Fedora Project holds regular Test Days to help put releases or individual components through their paces. This week, Fedora's Test Day will focus on [Cockpit](http://cockpit-project.org/), which will be part of the Fedora Atomic Host in Fedora 21. 14 | 15 | If you'd like to participate, be sure to [look over the Test Day on the Fedora wiki](https://fedoraproject.org/wiki/Test_Day:2014-09-16_Cockpit) and check out the prerequisites, test cases, and how to file results and bugs. 16 | 17 | Note that the test day runs all day, and you should be able to find help in the [#fedora-test-day](irc://irc.freenode.net/#fedora-test-day) channel on Freenode. (New to IRC? See [the Fedora guide on IRC](https://fedoraproject.org/wiki/How_to_use_IRC).) 18 | 19 | Questions? Ask on the [cockpit-devel](https://lists.fedorahosted.org/mailman/listinfo/cockpit-devel) mailing list. 20 | -------------------------------------------------------------------------------- /source/blog/2014-11-05-updated-centos-containers-available-via-docker-hub.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: jzb 3 | title: Updated CentOS Containers Available via Docker Hub 4 | date: 2014-11-05 17:08 UTC 5 | tags: 6 | - Docker 7 | - CentOS 8 | - Updates 9 | --- 10 | The CentOS project [has updated its Docker Images](http://lists.centos.org/pipermail/centos-announce/2014-November/020735.html) on the Docker Hub for CentOS 5, CentOS 6, and CentOS 7. 11 | 12 | If you're using CentOS containers, you can quickly update the image with `docker pull centos:centos6` (to get CentOS 6.6). This will grab the image if you don't have it locally, or update the image if you have it and just need to catch up to the latest release. 13 | 14 | The latest releases are: 15 | * CentOS 5.11 16 | * CentOS 6.6 17 | * CentOS 7.0.1406 18 | 19 | Note that this updates the fakesystemd package to properly include dependencies for the lsb-base container, and has fixed some broken symlinks in the CentOS 7 container. 20 | 21 | The CentOS Project also makes a number of pre-packaged container applications available on the [Docker Hub](https://registry.hub.docker.com/u/centos/). Currently you can choose from MariaDB, FreeIPA, Nginx, Apache httpd, and Wildfly. 22 | 23 | If you have any questions or have an interest in helping to package additional container applications, see the [centos-devel](http://lists.centos.org/mailman/listinfo/centos-devel) mailing list or join the conversation in #centos-devel on Freenode. 24 | -------------------------------------------------------------------------------- /source/blog/2014-11-19-fedora-atomic-test-day-tomorrow.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: jzb 3 | layout: post 4 | title: Fedora Atomic Test Day Tomorrow 5 | date: 2014-11-19 12:50 UTC 6 | tags: 7 | - Docker 8 | - Atomic 9 | - Fedora 10 | - Kubernetes 11 | categories: 12 | - Blog 13 | --- 14 | As Fedora ramps up for the final Fedora 21 release, scheduled for December 9th, we want to make sure that all the components and variants of Fedora get a proper testing. To that end, the Fedora Cloud Working Group is holding a Fedora Test Day on Thursday, 20 November. 15 | 16 | Please join us in the #atomic channel on Freenode if you have questions, or shoot us an email to cloud@lists.fedoraproject.org. 17 | 18 | Things to test: 19 | 20 | * Booting the image 21 | * Docker functionality (everything fro pulling images to running, making changes, committing images, etc.) 22 | * `atomic` (rpm-ostree) upgrade and rollback 23 | * Cockpit 24 | * Kubernetes 25 | 26 | We will have test cases on the [Fedora wiki](https://fedoraproject.org/wiki/Test_Day:2014-11-20_Atomic) and you are (of course) encouraged to come up with your own tests! 27 | 28 | The test day image can be found [here](https://kojipkgs.fedoraproject.org//work/tasks/8904/8118904/Fedora-Cloud-Atomic-20141112-21.x86_64.qcow2). Note that this is a test candidate, not a final release. Expect that things will change between now and the final release. 29 | -------------------------------------------------------------------------------- /source/blog/2014-12-18-cockpit-0-27-stable-added-to-centos-7-atomic-image.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: jzb 3 | layout: post 4 | title: "Docker 1.4, Cockpit 0.27 (stable) added to CentOS 7 Atomic" 5 | date: 2014-12-18 22:08 UTC 6 | tags: 7 | - Cockpit 8 | - Docker 9 | categories: 10 | - Blog 11 | --- 12 | If you're running the [CentOS Atomic Host](http://buildlogs.centos.org/monthly/7/) images, you'll want to do an `atomic upgrade` right about now. The update includes a bump for Docker to 1.4, and brings Cockpit to 0.27, and pulls in a few additional package updates. 13 | 14 | As you've probably read, Docker 1.4 [includes a few bug fixes](http://docs.docker.com/release-notes/), security fixes, and several new features. 15 | 16 | Cockpit 0.27 is the most recent *stable* release from the Cockpit Project. This release of the [Cockpit server manager](http://cockpit-project.org/) is the same used for Fedora 21 Atomic Host, and includes a lot of stability and feature improvements since 0.24. 17 | 18 | ## What's in that update?! 19 | 20 | You can see all the packages updated by using `atomic db diff commit1 commit2`. (And you can see the commit hashes for the two trees with `atomic status`.) 21 | 22 | ## Cockpit Hackfest ahead of DevConf.cz 23 | 24 | Going to [DevConf.cz](http://www.devconf.cz/)? Or just happen to be close to the Czech Republic and have a strong interest in Cockpit? You can learn how to hack on Cockpit, build plugins or prototypes, and much more! 25 | 26 | The Hackfest will be held in Room A113, Brno University of Technology, on [Friday 6 February from 2:10 to 5:10 CET](http://community.redhat.com/events/#devconfcz). Of course, you should check out DevConf.cz too, it's free to attend and you'll have dozens of fantastic presentations to choose from related to free software. Also, keep an eye on [Red Hat's Community Calendar](http://community.redhat.com/events/) for other free and open source related events that may be of interest. 27 | 28 | Hope to see you there! 29 | -------------------------------------------------------------------------------- /source/blog/2015-01-05-speak-at-red-hat-summit-proposals-due-7-january-2015.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: jzb 3 | layout: post 4 | title: "Speak at Red Hat Summit: Proposals Due 7 January 2015" 5 | date: 2015-01-05 15:04 UTC 6 | tags: 7 | - Red Hat Summit 8 | - Conference 9 | categories: 10 | - Blog 11 | --- 12 | With just a few days into 2015, it may not seem like it – but [Red Hat Summit](http://www.redhat.com/summit/) and DevNation are *just* around the corner. The call for proposals [is due to close on 7 January](https://rhs2015.smarteventscloud.com/portal/cfp/cfpLogin.ww), and we'd like to encourage folks who are doing interesting things with Atomic and containers to submit proposals before the CfP closes. 13 | 14 | We really want to hear from you, so if you're working with Atomic and have something interesting to say – get those proposals in today! Whether you're working with CentOS, Fedora, or RHEL Atomic Host, we'd like to hear from you. 15 | 16 | If you're submitting a proposal around Project Atomic, please drop me a line at jzb at RedHat.com – and feel free to ping me if you would like some help with the proposal or want to bounce a few ideas around. See you at Red Hat Summit in Boston! 17 | -------------------------------------------------------------------------------- /source/blog/2015-01-07-improving-docker-error-messages.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: dwalsh 3 | layout: post 4 | title: Improving Docker Error Messages 5 | date: 2015-01-07 15:13 UTC 6 | tags: 7 | --- 8 | 9 | It is always amazing how small things can aggravate you. One of the biggest irritants I have with `docker` is how it has handled the `--help` option. 10 | 11 | It was sending `docker --help` and `docker COMMAND --help` to `stderr`. This caused Red Hat's Quality Engineering (QE) teams headaches since they wanted to automate testing for things like new options, or making sure the options in the man page matched those in the usage page. 12 | 13 | QE would end up doing things like: 14 | 15 | `docker --help 2&>1 | cat ...` 16 | 17 | And it would never quite work correctly. Besides, a user running a `command --help` should not be considered an error. 18 | 19 | But a **far** bigger irritant was when running a docker run command and mis-typing an option, like so: 20 | 21 | ``` 22 | docker run --itq rhel7 /bin/sh 23 | flag provided but not defined: -itq 24 | 25 | Usage: docker run [OPTIONS] IMAGE [COMMAND] [ARG...] 26 | 27 | Run a command in a new container 28 | 29 | -a, --attach=[] Attach to STDIN, STDOUT or STDERR. 30 | --add-host=[] Add a custom host-to-IP mapping (host:ip) 31 | -c, --cpu-shares=0 CPU shares (relative weight) 32 | --cap-add=[] Add Linux capabilities 33 | ... 34 | ``` 35 | 36 | The error message would scroll off the terminal window, and now I need to use the scroll bar to see what I screwed up. 37 | 38 | Why did it show me the usage? 39 | 40 | I know the usage, and if I want the usage I will type `docker run --help`. 41 | 42 | Well, [a patch I submitted a while ago](https://github.com/docker/docker/pull/8980) just got merged to fix both issues. Now `docker` error messages will go to `stderr`, and usage messages will go to `stdout`. 43 | 44 | Committing an error in the command line will now put out a message like the following: 45 | 46 | ``` 47 | docker run --itq rhel7 /bin/sh 48 | flag provided but not defined: -itq 49 | 50 | Try 'docker run --help' for more information. 51 | ``` 52 | 53 | This new behavior should be in docker-1.4.1. Enjoy! 54 | 55 | As Eric S. Raymond said, [every good work of software starts by scratching a developer's personal itch](http://en.wikipedia.org/wiki/The_Cathedral_and_the_Bazaar). 56 | -------------------------------------------------------------------------------- /source/blog/2015-01-16-atomic-hackfest-at-devconf-cz.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | author: jzb 3 | layout: post 4 | title: Atomic Workshop at DevConf.cz 5 | date: 2015-01-16 19:39 UTC 6 | tags: 7 | - Conference 8 | - DevConf 9 | - Brno 10 | categories: 11 | - Blog 12 | --- 13 | Interested in Project Atomic? Looking to help make Fedora and CentOS Atomic Hosts even better? Join us for a half-day workshop at [DevConf.cz](http://devconf.cz/) in Brno on Saturday, 7 February 2015. 14 | 15 | After lunch, we'll meet to work on the Atomic Host Definition, plans for Fedora and CentOS Atomic Host, and projects that are essential to Project Atomic. 16 | 17 | Full venue information can be found on the DevConf.cz site. We'll be meeting after lunch to work until end of day. You might also want to check out the [Cockpit Hackfest](http://developerconference2015.sched.org/event/411f41e00979698340f876b8a8119ef6?iframe=no#.VLlqyx36wa0) on Friday as well. 18 | 19 | Planning for the Workshop will take place on the atomic-devel mailing list, and a final agenda will be posted the week of 2 February. Questions? Ping Joe Brockmeier (jzb at Red Hat), or ask on atomic-devel@projectatomic.io or in #atomic on Freenode. 20 | 21 | -------------------------------------------------------------------------------- /source/blog/2015-04-14-project-atomic-at-container-camp.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Project Atomic at Container.Camp 3 | author: jzb 4 | date: 2015-04-14 21:35:00 UTC 5 | tags: Docker, Event 6 | comments: true 7 | published: true 8 | --- 9 | 10 | Summer is approaching, and it's time for camp! [Container.Camp](http://container.camp/), that is. 11 | 12 | Okay, that's a bit of a hokey lead-in. The good news is that I'll try to avoid that sort of thing during my talk at Container.Camp this Friday. 13 | 14 | READMORE 15 | 16 | Container.Camp is happening at Broadway Studios near San Francisco's North Beach, walking distance from the Montgomery BART, MUNI, and cable car stations. Tickets are still available, and the featured speakers are excellent! The schedule includes several folks from Docker, one of the lead Kubernetes developers from Google, and other folks doing good work in the Linux container space. 17 | 18 | I'll be there to talk about Project Atomic and meet up with folks who are using containers in development and production. Hope to see you there! -------------------------------------------------------------------------------- /source/blog/2015-04-22-using-environment-substitution-with-the-atomic-command.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Using Environment Substitution with the Atomic Command 3 | author: dwalsh 4 | date: 2015-04-22 11:00:00 UTC 5 | tags: Atomic, CLI, Docker, Bash 6 | comments: true 7 | published: true 8 | --- 9 | 10 | I recently published a [post on the Red Hat Developer Blog](http://developerblog.redhat.com/2015/04/21/introducing-the-atomic-command) about the Atomic command that we've been working on for the last few months. 11 | 12 | The [Atomic](http://www.projectatomic.io/docs/usr-bin-atomic/) command (/usr/bin/atomic) is a high-level, coherent entrypoint for Atomic Host systems, and aims to fill in the gaps in Linux container implementations. 13 | 14 | READMORE 15 | 16 | One of the first questions I received was about environment substitution. The user wanted to have standard Bash substitutions working with /usr/bin/atomic. Specifically, he wanted to allow substitutions like `$PWD/.foobar` and `--user=$(id -u)`. 17 | 18 | I decided to try this out by creating a simple Dockerfile. 19 | 20 | ``` 21 | from rhel7 22 | LABEL RUN echo $PWD/.foobar --user=$(id -u) 23 | ``` 24 | Then I build the container 25 | 26 | ``` 27 | docker build -t test . 28 | ``` 29 | Then, I'll execute atomic run test 30 | 31 | ``` 32 | atomic run test 33 | echo 34 | ``` 35 | Looking at the label using `docker inspect`, I see that building the container dropped the $() content. 36 | 37 | So, I'll change the Dockerfile to quote it. 38 | 39 | ``` 40 | from rhel7 41 | LABEL RUN echo '$PWD/.foobar' '--user=$(id -u)' 42 | ``` 43 | Build the container 44 | 45 | ``` 46 | docker build -t test . 47 | ``` 48 | Let's run it again: 49 | 50 | ``` 51 | atomic run test 52 | echo $PWD/.foobar --user=$(id -u) 53 | /root/test1/.foobar --user=0 54 | ``` 55 | ## Success 56 | 57 | Woohoo, it works! If you want to take advantage of environment variables in your `LABEL RUN` statements, make sure to quote them so they're passed through appropriately. 58 | 59 | Have more questions about the `atomic` command? Leave a comment here, or ask on the [atomic@projectatomic.io](https://lists.projectatomic.io/mailman/listinfo/atomic). -------------------------------------------------------------------------------- /source/blog/2015-04-23-container-camp-presentation-and-slides.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Container.Camp Presentation and Slides 3 | author: jzb 4 | date: 2015-04-23 19:35:35 UTC 5 | tags: Docker, Presentation, Container.Camp 6 | comments: true 7 | published: true 8 | --- 9 | 10 | Last week I had the opportunity to attend Container.Camp in San Francisco and present an introduction to Project Atomic. If you didn't get to attend – or just want to relive the talk – you can [find it on YouTube](https://www.youtube.com/watch?v=cPltG4YdKVE) (also embedded below). 11 | 12 | If you'd like to see all of the Container.Camp presentations, they're available on YouTube [under the Container.Camp channel](https://www.youtube.com/channel/UCvksXSnLqIVM_uFB7xyrsSg). Thanks again to the Container.Camp organizers for inviting me to speak, it was a great event. Fantastic speakers, really interesting venue, and a great crowd. 13 | 14 | READMORE 15 | 16 | 17 | 18 |
Introduction to Atomic: Tailoring a Trusted OS for Containers from Joe Brockmeier
19 | -------------------------------------------------------------------------------- /source/blog/2015-04-28-logging-docker-container-output-to-journald.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Logging Docker Container Output to journald 3 | author: dwalsh 4 | date: 2015-04-28 17:26:27 UTC 5 | tags: Docker, logging, journald 6 | comments: true 7 | published: true 8 | --- 9 | 10 | [Docker](https://www.docker.com/) has added a new feature to allow alternate logging drivers, and soon you'll be able to use `journald` as a supported driver. 11 | 12 | With Docker 1.6 they support json-file, which is the old default, syslog, or no logging at all. 13 | 14 | READMORE 15 | 16 | If you ran your docker daemon with the `--log-driver=syslog` option, any output from a container would go directly to system syslog daemon, and usually end up in /var/log/messages. 17 | 18 | I added a patch to support journald as a logging driver, and it was [recently merged](https://github.com/docker/docker/pull/12557). 19 | 20 | In docker-1.7 you will have the option to use `--log-driver=journald` on either your docker daemon to cause all of your container logging to go directly to the journal, or you could use the --log-driver=journald on a docker run/create line, so you could get individual containers running with different logging drivers. 21 | 22 | To test this I set up my docker daemon to run with the following options. 23 | 24 | ```docker -d --selinux-enabled --log-driver=journald``` 25 | 26 | Now I run a simple container. 27 | 28 | ```docker run fedora echo "Dan Walsh was here"``` 29 | 30 | Then I look up the container ID for the newly created container, and I can use journalctl to examine the content. 31 | 32 | ``` 33 | journalctl MESSAGE_ID=cdf02c627e27 34 | -- Logs begin at Mon 2015-04-06 16:06:42 EDT, end at Fri 2015-04-24 08:40:38 EDT. -- 35 | Apr 20 15:06:39 dhcp-10-19-62-196.boston.devel.redhat.com docker[27792]: Dan Walsh was here 36 | ``` 37 | 38 | Currently the `docker logs` command only works with the json-file backend. But I hope to eventually get the docker daemon to communicate with the journald to get this information. Of course if anyone wants to take a stab at this, we would welcome your effort. 39 | 40 | As mentioned, the journald backend for `--log-driver` is not shipping in Docker today, but should be available in the 1.7 release. Keep reading here or follow [@projectatomic](https://twitter.com/projectatomic) for updates on new and interesting features in Docker. -------------------------------------------------------------------------------- /source/blog/2015-05-27-fedora-22-released-with-atomic-hosts.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Fedora 22 Released with Atomic Hosts 3 | author: jzb 4 | date: 2015-05-27 18:14:16 UTC 5 | tags: Fedora, Fedora 22, Vagrant 6 | comments: true 7 | published: true 8 | --- 9 | 10 | A quick note for folks who might have missed the announcement yesterday, [Fedora 22 was officially released](http://fedoramagazine.org/fedora-22-released/), along with [Atomic images](https://getfedora.org/en/cloud/download/atomic.html) for OpenStack/KVM, Amazon EC2, and Vagrant. 11 | 12 | The Vagrant images are suitable for VirtualBox and libvirt/KVM, so they're usable on Linux (libvirt), or Mac OS X and Windows (VirtualBox) with the appropriate Vagrant providers. Josef Stříbný has written up a short tutorial on [using Vagrant images on Fedora 22](http://fedoramagazine.org/running-vagrant-fedora-22/) on Fedora Magazine. 13 | 14 | Of course, Fedora 22 also includes the Workstation and Server editions – and the Fedora 22 Docker image will be available via the Docker Hub very soon. 15 | 16 | Questions or feedback on the Fedora 22 Atomic host release? [Talk to us on the Fedora Cloud mailing list](https://admin.fedoraproject.org/mailman/listinfo/cloud), or fire up your favorite IRC client and head to Freenode in the #fedora-cloud channel. -------------------------------------------------------------------------------- /source/blog/2015-05-28-project-atomic-comes-to-japan.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Project Atomic Comes to Japan 3 | author: jzb 4 | date: 2015-05-28 17:56:10 UTC 5 | tags: LinuxCon Japan, LinuxCon, Meetup, Docker, Event 6 | published: true 7 | comments: true 8 | --- 9 | In case you missed the news on Twitter, we're taking this show on the road! Specifically, we have a few opportunities to learn more about Project Atomic in Tokyo, Japan. 10 | 11 | Next week, I'll be attending [LinuxCon Japan](http://events.linuxfoundation.org/events/linuxcon-japan) to [speak about Project Atomic](http://events.linuxfoundation.org/events/linuxcon-japan/program/schedule) and the traditional package problems. 12 | 13 | We'll also be hosting a [Meetup in Ebisu](https://redhat.smartseminar.jp/public/seminar/view/231) on 2 June at the Red Hat Tokyo office! If you're local to Tokyo (or can get there easily) then you should definitely sign up and check out the Meetup! 14 | 15 | Have a meetup, talk, or event where you're discussing Project Atomic and want to spread the word? Shoot me an email to jzb at Red Hat or find me [on Twitter](http://twitter.com/jzb). 16 | -------------------------------------------------------------------------------- /source/blog/2015-06-11-see-you-at-southeast-linuxfest-self.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: See you at Southeast LinuxFest (SELF) 3 | author: jzb 4 | date: 2015-06-11 13:42:50 UTC 5 | tags: Event, SELF 6 | comments: true 7 | published: true 8 | --- 9 | 10 | ![](/images/self-logo.png) Heading to the [SouthEast LinuxFest](http://www.southeastlinuxfest.org/) this weekend? If so, be sure to stop by the Red Hat booth to pick up some Project Atomic shirts and stickers! 11 | 12 | If you're looking about talks relevant to Atomic, you can catch my talk on Saturday ***All You Wanted to Know About Linux Containers*** at 2:45, or ***Containers and the Future of Open Source Software Delivery*** on Sunday at 11:30. 13 | 14 | Michael Solberg will be speaking after lunch on Sunday (1:30) on ***Streamlining Agile Linux Development with Docker and RHEL Atomic***. 15 | 16 | Also interesting, though not directly related to Atomic, Tom Callaway and Ruth Suehle will be talking about Raspberry Pi on Saturday at 1:30, Tom Callaway will be covering ***How to Understand FOSS Licenses without a Lawyer*** at 5:15 on Saturday, and Brian Proffitt will deliver ***It's Metaphors All the Way Down*** on Sunday at 2:45. -------------------------------------------------------------------------------- /source/blog/2015-06-15-project-atomic-online-meetup-wednesday.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Project Atomic Online Meetup Wednesday 3 | author: jzb 4 | date: 2015-06-15 20:55:57 UTC 5 | tags: Meetup, Online 6 | comments: true 7 | published: true 8 | --- 9 | 10 | Still wondering what this Atomic stuff is all about? Want a quick primer on Project Atomic? 11 | 12 | Join us on Wednesday at 2 p.m. Eastern for a high level introduction to Project Atomic and its components. We'll look at all the "pieces" of Atomic, from Atomic Host, to rpm-ostree, the Atomic command (/usr/bin/atomic), Nulecule, and Atomic App. 13 | 14 | The event is hosted on BlueJeans, you can view the event using your Browser (a plugin is required for Firefox) or using the BlueJeans app on iOS or Android. 15 | 16 | To join, visit [https://a2m.bluejeans.com/a2m/live-event/ch34638](https://a2m.bluejeans.com/a2m/live-event/ch34638) on Wednesday, 17 June at 2 p.m. Eastern. 17 | 18 | This will be part of a regular series of online events about Project Atomic and its components. Keep your eyes on the Project Atomic blog for upcoming events! 19 | 20 | -------------------------------------------------------------------------------- /source/blog/2015-07-01-project-atomic-at-containercon.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Project Atomic at ContainerCon 3 | author: jzb 4 | date: 2015-07-01 10:43:29 UTC 5 | tags: Event, ContainerCon 6 | comments: true 7 | published: true 8 | --- 9 | 10 | ![](/images/lf-logo.jpg) Attending [ContainerCon](http://events.linuxfoundation.org/events/containercon) in Seattle this year? Co-located with CloudOpen and LinuxCon, ContainerCon is focused on bringing contributors working with containers, the Linux kernel, and other components together to continue improving the Linux container ecosystem. 11 | 12 | As you might expect, there's quite a few talks on the schedule related to Project Atomic or components important to Atomic (like Kubernetes). Here's a sample of talks you might want to plan on seeing: 13 | 14 | READMORE 15 | 16 | * [Managing Kubernetes and OpenShift with ManageIQ](http://sched.co/3Y6a) – Alissa Bonas 17 | * [Understanding Atomic: Under the Hood of an Atomic Host](http://sched.co/3YKl) – Joe Brockmeier 18 | * [Docker for Developers](http://sched.co/3XqC) – Michael Hrivnak 19 | * [Lightweight Openstack Benchmarking Service with Rally and Docker](http://sched.co/3Z34) – Swapnil Kuikarni 20 | * [VDSM in a Box: The Journey of the oVirt Hypervisor Into the Container World & Project Atomic](http://sched.co/3YQb) – Anayoly Litovsky 21 | * [What Does Kubernetes Get Me?](http://sched.co/3Y5q) – Eric Paris 22 | * [Persistent Storage for Containers with Kubernetes and OpenShift](http://sched.co/3Y5f) – Mark Turansky 23 | * [Super Privileged Containers](http://sched.co/3YTh) – Daniel J. Walsh 24 | * [Container Security](http://sched.co/3YTk) – Daniel J. Walsh 25 | * [Containerizing Distributions](http://sched.co/3YTf) – Colin Walters 26 | * [Building Clustered Applications with Kubernetes and Docker](http://sched.co/3XqB) – Steve Watt 27 | 28 | If you're going to be at LinuxCon, CloudOpen, and ContainerCon, be sure to drop by the Red Hat booth to say hello as well. We'll have some Project Atomic swag and would love to hear about your experience with Atomic or questions you might have. -------------------------------------------------------------------------------- /source/blog/2015-07-16-follow-us-the-nulecule-has-moved.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Follow us, the Nulecule has moved! 3 | author: goern 4 | date: 2015-07-16 21:23:08 UTC 5 | tags: nulecule, atomicapp, Atomic App, specification 6 | comments: true 7 | published: true 8 | --- 9 | 10 | The past weeks have been packed with preparations for Red Hat Summit 2015 and getting [Atomic App](http://www.projectatomic.io/docs/atomicapp/) and the [Nulecule Specification](https://github.com/projectatomic/nulecule/) into good shape. Now that we have finished that, we put at new release process in place and found a new home for the normative Nulecule Specification documents. 11 | 12 | Additionally, the first extension of the Nulecule Specification has been started! 13 | 14 | READMORE 15 | 16 | Starting with Nulecule Specification 0.0.2 we will host the human readable normative document at [projectatomic.io](www.projectatomic.io/nulecule/0.0.2/), and a machine readable version (aka the JSON schema) will live on [GitHub](https://github.com/projectatomic/nulecule/blob/v0.0.2/spec/0.0.2/schema.json). 17 | 18 | GitHub will be the place where we will continue working on the specification, the [master branch](https://github.com/projectatomic/nulecule/) will always carry the most up to date working draft. And we encorage you to participate in the development by submitting feature requests or pull requests. 19 | 20 | One of our collaborators has started extending the Nulecule Specification by adding '[Nulecule Image Specification](https://github.com/bkabrda/nulecule-images)'. We see this as an extension to the core features of Nulecule, and we have designed the Nulecule Specification with exactly this approach in our minds: Nulecule Specification is small and simple (configure and deploy applications) and Extension Specifications enrich the feature set (how to build the application and all its dependencies). 21 | 22 | [Slavek Kabrda](https://github.com/bkabrda) is one of the main contributors to DevAssistant and has drafted a first version of the '[Nulecule Image Specification](https://github.com/bkabrda/nulecule-images)', please take a critical look at it and join the development by commenting and experimenting with it! 23 | 24 | PS: at least at [devconf.cz](http://devconf.cz/) last year Slavek was pretty open to offer beer-rewards for contributions... -------------------------------------------------------------------------------- /source/blog/2015-09-10-new-centos-atomic-host-release-featuring-kubernetes-1-0.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: New CentOS Atomic Host Release, Featuring Kubernetes 1.0 3 | author: jbrooks 4 | date: 2015-09-10 21:34:55 UTC 5 | tags: centos, atomic, kubernetes, docker 6 | comments: true 7 | published: true 8 | --- 9 | 10 | Big news, fans of all things Atomic -- the [CentOS Project's](https://www.centos.org/) [Atomic SIG](http://wiki.centos.org/SpecialInterestGroup/Atomic) has released an updated CentOS Atomic Host system tree and image set, which includes [Kubernetes](http://kubernetes.io/) v1: 11 | 12 | READMORE 13 | 14 | >Today we’re releasing a significant update to the CentOS Atomic Host (version 7.20150908), a lean operating system designed to run Docker containers, built from standard CentOS 7 RPMs, and tracking the component versions included in Red Hat Enterprise Linux Atomic Host. 15 | 16 | >CentOS Atomic Host is available as a [VirtualBox](http://cloud.centos.org/centos/7/atomic/images/CentOS-Atomic-Host-7-Vagrant-Virtualbox.box) or [libvirt-formatted](http://cloud.centos.org/centos/7/atomic/images/CentOS-Atomic-Host-7-Vagrant-Libvirt.box) Vagrant box, as an installable [ISO image](http://cloud.centos.org/centos/7/atomic/images/CentOS-Atomic-Host-7-Installer.iso), as a [qcow2 image](http://cloud.centos.org/centos/7/atomic/images/CentOS-Atomic-Host-7-GenericCloud.qcow2.gz), or as an Amazon Machine Image. These images are available for download at cloud.centos.org. The backing ostree repo is published to mirror.centos.org. 17 | 18 | >Currently, the CentOS Atomic Host includes these core component versions: 19 | 20 | > * kernel 3.10.0-229 21 | > * docker 1.7.1-108 22 | > * kubernetes 1.0.0-0.8.gitb2dafda 23 | > * etcd 2.0.13-2 24 | > * flannel 0.2.0-10 25 | > * cloud-init 0.7.5-10 26 | > * ostree 2015.6-4 27 | > * atomic 1.0-108 28 | 29 | For more information, go check out the [release announcement](http://seven.centos.org/2015/09/announcing-a-new-release-of-centos-atomic-host/) at the CentOS project blog. If you're particularly impatient, vagrant offers the fastest route to getting up and running with the new image: 30 | 31 | ``` 32 | $ vagrant init centos/atomic-host && vagrant up 33 | ``` 34 | -------------------------------------------------------------------------------- /source/blog/2015-09-15-combined-fedora-centos-atomic-test-day-next-week.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Combined Fedora/CentOS Atomic Test Day Next Week 3 | author: jbrooks 4 | date: 2015-09-15 16:31:41 UTC 5 | tags: test, centos, fedora 6 | comments: true 7 | published: true 8 | --- 9 | 10 | Next week, on Tuesday, September 22nd, the Fedora Cloud and CentOS Atomic special interest groups will be dabbling in test day fusion to put each projects' Atomic Host Images through their paces. 11 | 12 | On the Fedora side, we'll be testing images based on the upcoming [Fedora 23](https://getfedora.org/en/cloud/prerelease/atomic.html). On the CentOS side, we'll test images from our latest [release](http://seven.centos.org/2015/09/announcing-a-new-release-of-centos-atomic-host/), as well as one or more development images featuring newer components atop the CentOS 7 base. 13 | 14 | READMORE 15 | 16 | Tests will range from basic sanity checking and deployment on different host targets to testing cluster configuration and functionality. If there are particular areas you'd like to see tested, reach out to us on the [atomic-devel](https://lists.projectatomic.io/mailman/listinfo/atomic-devel) mailing list. 17 | 18 | Information about tests and media for the test day can be found on the [Fedora](https://fedoraproject.org/wiki/Test_Day:2015-09-22_Fedora_Cloud_Atomic) and the [CentOS](https://wiki.centos.org/SpecialInterestGroup/Atomic/TestDay) wikis. 19 | 20 | On test day, we'll be hanging out on freenode irc in #atomic. Drop by to help test, or ask questions about Atomic. 21 | 22 | -------------------------------------------------------------------------------- /source/blog/2015-09-23-introducing-vendor-labels2.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Introducing Image Metadata Labels for Software Vendors 3 | author: aweiteka 4 | date: 2015-09-23 14:12:22 UTC 5 | tags: docker, atomic, labels 6 | comments: true 7 | published: true 8 | --- 9 | 10 | Docker image metadata can be arbitrarily extended using the LABEL directive in a Dockerfile. This is a great way to annotate an image and enable automation: 11 | 12 | * How to run or install an image 13 | * Who built an image 14 | * URLs for documentation or other support information 15 | 16 | We've been encouraging the docker community to standardize these LABELs in an open source way through the [Container Application Generic Labels repository](https://github.com/projectatomic/ContainerApplicationGenericLabels/). Recent [pull requests](https://github.com/projectatomic/ContainerApplicationGenericLabels/pulls?utf8=%E2%9C%93&q=is%3Apr+is%3Aclosed+author%3Aaweiteka+vendor) added a new vendor directory for software companies (or FOSS projects) to document metadata that is specific to their particular needs. 17 | 18 | As a point of reference, Red Hat released their [LABEL metadata](https://github.com/projectatomic/ContainerApplicationGenericLabels/blob/master/vendor/redhat/labels.md) and [image naming policy](https://github.com/projectatomic/ContainerApplicationGenericLabels/blob/master/vendor/redhat/names.md) to the community. This might be a useful reference for other folks building their own metadata. 19 | 20 | Have metadata for your project? Just submit a pull request to help create documentation about metadata your tooling or application depends on. Have questions? Ask on the [atomic-devel](http://lists.projectatomic.io/mailman/listinfo/atomic-devel) mailing list, or create an issue in the GitHub repository. 21 | -------------------------------------------------------------------------------- /source/blog/2015-09-25-atomic-app-0-1-10.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Atomic App 0.1.10 released! 3 | author: goern 4 | date: 2015-09-25 19:29:22 UTC 5 | tags: atomic app, nulecule, composite apps, developers, alm, application lifecycle 6 | published: false 7 | comments: true 8 | --- 9 | 10 | My team is please to announce the immediate availability of [Atomic App 0.1.10](https://github.com/projectatomic/atomicapp/releases/tag/0.1.10). We have release this as an intermediate step to unlock some blocked issues within Atomic App. For a (nearly) full list of changes have a look at [the changelog](https://github.com/projectatomic/atomicapp/blob/master/CHANGELOG.md). 11 | 12 | Please be reminded, that any contributions are highly appreciated, but please make sure you have some tests (on new features) and documentation, and a look at our [contribution guidelines](https://github.com/projectatomic/atomicapp/blob/master/CONTRIBUTING.md). 13 | 14 | Thanks for all the help with Atomic App!! -------------------------------------------------------------------------------- /source/blog/2015-10-08-updated-centos-atomic-host-tree-and-images-available.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Updated CentOS Atomic Host Tree and Images Available 3 | author: jbrooks 4 | date: 2015-10-08 21:57:40 UTC 5 | tags: cockpit, fedora, atomic, systemd, cloud-init, docker 6 | comments: true 7 | published: true 8 | --- 9 | 10 | The CentOS Atomic Host train rolls on, with an updated filesystem tree and new set of deployment/installation images: 11 | > Today we’re announcing an update to CentOS Atomic Host (version 7.20151001), a lean operating system designed to run Docker containers, built from standard CentOS 7 RPMs, and tracking the component versions included in Red Hat Enterprise Linux Atomic Host. 12 | > 13 | > CentOS Atomic Host is available as a VirtualBox or libvirt-formatted Vagrant box, or as an installable ISO, qcow2 or Amazon Machine image. These images are available for download at cloud.centos.org. The backing ostree repo is published to mirror.centos.org. 14 | > 15 | > CentOS Atomic Host includes these core component versions: 16 | > 17 | > * kernel-3.10.0-229.14.1.el7.x86_64 18 | > * cloud-init-0.7.5-10.el7.centos.1.x86_64 19 | > * atomic-1.0-115.el7.x86_64 20 | > * kubernetes-1.0.3-0.1.gitb9a88a7.el7.x86_64 21 | > * flannel-0.2.0-10.el7.x86_64 22 | > * docker-1.7.1-115.el7.x86_64 23 | > * etcd-2.1.1-2.el7.x86_64 24 | > * ostree-2015.6-4.atomic.el7.x86_64 25 | 26 | For more information about the release, check out the [announcement post](http://seven.centos.org/2015/10/new-centos-atomic-host-release-available-now/) over at the CentOS Project blog. -------------------------------------------------------------------------------- /source/blog/2015-10-13-updated-spc-sysdig-container.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Updates to running a sysdig SPC to troubleshoot containers 3 | author: mmicene 4 | date: 2015-10-13 14:19:21 UTC 5 | tags: fedora, atomic, docker 6 | comments: true 7 | published: true 8 | --- 9 | 10 | In a interesting coincidence, the same day we posted [the super privileged containers post](http://www.projectatomic.io/blog/2015/09/using-a-spc-to-troubleshoot-containers/) using [Sysdig](www.sysdig.org/), the Sysdig team announced [support for Atomic hosts](https://sysdig.com/dig-into-atomic-host/). You can take a look at that announcement for how sysdig does it's magic on an Atomic host and which Atomic hosts are supported. 11 | 12 | So no more need to build your own sysdig container for your Atomic clusters, you can use the official builds. Here's what that looks like now. 13 | 14 | READMORE 15 | 16 | I exchanged email with the Sysdig team after they noticed the coinciding posts. After a few exchanges, Gianluca from the Sysdig team not only had solid sets of kernel support for Atomic, but had merged the docker LABEL to get `atomic run` functional for their upstream container. 17 | 18 | Getting a sysdig super privileged container running on an Atomic host is as simple as: 19 | 20 | `# atomic run --spc -n sysdig-spc sysdig/sysdig` 21 | 22 | This will give you a container named `sysdig-spc` and a bash shell as root in the container. You can run `csysdig -pc` and start your inspections. I like to add the `-spc` to the name of the container, that way I can tell that it has escalated privileges at a glance. 23 | 24 | One thing you'll see in the output is that sysdig is checking for the kernel headers–and when it doesn't find them, checks for a precompiled module matching the kernel version. Those modules get built for each kernel that gets pushed out to the official repos for Fedora, Red Hat, and CentOS. 25 | 26 | Open source for the win! -------------------------------------------------------------------------------- /source/blog/2015-11-19-atomic-app-0-2.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: What's new in Atomic App 0.2 3 | author: cdrage 4 | date: 2015-11-19 15:46:51 UTC 5 | tags: atomic app, nulecule, composite apps, developers, alm, application lifecycle 6 | comments: true 7 | published: true 8 | --- 9 | 10 | Earlier this week we released version [0.2.2](https://github.com/projectatomic/atomicapp/releases) of Atomic App. The first update since our major refactor in 0.2.1. 11 | 12 | The release of __0.2.1__ introduced a [major refactor](https://github.com/projectatomic/atomicapp/pull/278) of our code base as well as numerous new features to Atomic App. Such as: 13 | 14 | READMORE 15 | 16 | * No more exporting to the current working directory when using __run__ or __install__ of Atomic App. 17 | * Installs are extracted to /var/lib/atomicapp by default. 18 | * JSON [pointer xpathing for artifact resources](https://github.com/projectatomic/nulecule/issues/70). 19 | 20 | With __0.2.2__ we fix numerous bugs as well as introduce some dependency changes to our Atomic App Dockerfiles. 21 | 22 | As we continue to push towards a 1.0.0 release we highly appreciate any comments or contributions to the Atomic App [repo](https://github.com/projectatomic/atomicapp). If you have any questions about Atomic App or Nulecule, visit the #nulecule channel on Freenode or ask on the [container-tools](https://www.redhat.com/mailman/listinfo/container-tools) mailing list. 23 | -------------------------------------------------------------------------------- /source/blog/2015-11-24-centos-atomic-host-updated.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: CentOS Atomic Host Updated 3 | author: jbrooks 4 | date: 2015-11-24 12:00:00 UTC 5 | tags: cockpit, fedora, atomic, systemd, cloud-init, docker 6 | comments: true 7 | published: true 8 | --- 9 | 10 | The CentOS Atomic SIG has released an updated filesystem tree and new set of deployment/installation images, featuring updates to docker and atomic, among other components. 11 | 12 | Check out the details below, and stay tuned for the next CentOS Atomic Host update, which should arrive soon after the main CentOS Project finishes building its [next major release](http://seven.centos.org/2015/11/rhel-7-2-released-today/). 13 | 14 | READMORE 15 | 16 | > Today we're announcing an update to CentOS Atomic Host (version 7.20151118), a lean operating system designed to run Docker containers, built from standard CentOS 7 RPMs, and tracking the component versions included in Red Hat Enterprise Linux Atomic Host. Please note that this release is based on content derived from the upstream 7.1 release. 17 | 18 | > CentOS Atomic Host is available as a VirtualBox or libvirt-formatted Vagrant box, or as an installable ISO, qcow2 or Amazon Machine image. These images are available for download at [cloud.centos.org](http://cloud.centos.org/centos/7/atomic/images/). The backing ostree repo is published to [mirror.centos.org](http://mirror.centos.org/centos/7/atomic/x86_64/repo). 19 | 20 | > CentOS Atomic Host includes these core component versions: 21 | 22 | > * kernel-3.10.0-229.20.1.el7.x86_64 23 | * cloud-init-0.7.5-10.el7.centos.1.x86_64 24 | * atomic-1.6-6.gitca1e384.el7.x86_64 25 | * kubernetes-1.0.3-0.2.gitb9a88a7.el7.x86_64 26 | * etcd-2.1.1-2.el7.x86_64 27 | * ostree-2015.6-4.atomic.el7.x86_64 28 | * docker-1.8.2-7.el7.centos.x86_64 29 | * flannel-0.2.0-10.el7.x86_64 30 | 31 | For more information about the release, check out the [announcement post](http://seven.centos.org/2015/11/centos-atomic-host-updated/) over at the CentOS Project blog. 32 | -------------------------------------------------------------------------------- /source/blog/2015-12-04-fedora-atomic-host-two-week-release-ready.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Fedora Atomic Host Two-Week Release Ready! 3 | author: jzb 4 | date: 2015-12-04 17:58:06 UTC 5 | tags: fedora, atomic host 6 | comments: true 7 | published: true 8 | --- 9 | 10 | The [Fedora Project's Cloud Working Group](https://fedoraproject.org/wiki/Cloud)is happy to announce the [first post-Fedora 23 Atomic release](https://getfedora.org/en/cloud/download/atomic.html). Fedora Atomic Host is optimized to run Docker containers and is on a rapid-release cycle to match the pace of Linux container technology. 11 | 12 | Approximately every two weeks we will release the Fedora Atomic Host image in all of our supported formats (installable ISO, qcow2, Vagrant Boxes, and EC2 images), with the most up-to-date snapshot of our stack to work with Linux containers. 13 | 14 | READMORE 15 | 16 | Note you can just grab the Vagrant boxes using `vagrant init fedora/23-atomic-host` and then use `vagrant up` if you're already using Vagrant. See the [Fedora Magazine piece on Vagrant with Fedora 22](https://fedoramagazine.org/using-fedora-22-atomic-vagrant-boxes/) if you're new to using Vagrant on Fedora. 17 | 18 | This release features several updates to key packages: 19 | 20 | * kernel-4.2.6-301.fc23.x86_64 21 | * cloud-init-0.7.6-5.20140218bzr1060.fc23.noarch 22 | * atomic-1.6-5.git09ac479.fc23.x86_64 23 | * kubernetes-1.1.0-0.17.git388061f.fc23.x86_64 24 | * etcd-2.2.1-2.fc23.x86_64 25 | * ostree-2015.9-3.fc23.x86_64 26 | * docker-1.9.1-2.git78bc3ea.fc23.x86_64 27 | * flannel-0.5.1-3.fc23.x86_64 28 | 29 | Many thanks to all the Fedora folks who worked on this release, especially Adam Miller, Dennis Gilmore, Ralph Bean, Sayan Chowdhury, and Kushal Das. 30 | 31 | The Atomic release is produced by the Fedora Cloud Working Group. We are always looking for additional contributors and folks to help test the releases. If you have questions about the Fedora Atomic release, find us on Freenode in #fedora-cloud or on cloud@lists.fedoraproject.org. 32 | -------------------------------------------------------------------------------- /source/blog/2015-12-17-fedora-atomic-host-two-week-release-12-15-2015-ready.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Fedora Atomic Host Two-Week Release (12-15-2015) Ready! 3 | author: jzb 4 | date: 2015-12-17 14:20:54 UTC 5 | tags: Fedora, Fedora Cloud, Atomic Host, Docker 6 | comments: true 7 | published: true 8 | --- 9 | 10 | The Fedora Project's Cloud Working Group is pleased to announce the December 15 two-week Fedora Atomic Host is [ready to download](https://getfedora.org/en/cloud/download/atomic.html). Fedora Atomic Host is optimized to run Docker containers and is on a rapid-release cycle to match the pace of Linux container technology. Note that there will be no release on December 29 due to the holiday. 11 | 12 | We release the Fedora Atomic Host builds approximately every two weeks in all the supported formats (installable ISO, qcow2, Vagrant Boxes, and EC2 images), with the most up-to-date snapshot of our stack to work with Linux containers. 13 | 14 | READMORE 15 | 16 | The 15 December 2015 release includes updates for [Docker](https://bodhi.fedoraproject.org/updates/FEDORA-2015-5917f166c6), RPM-ostree, and fixes a few [filesystem issues with the bare metal install](https://bugzilla.redhat.com/show_bug.cgi?id=1290257). Changed packages include: 17 | 18 | * docker-1.9.1-4.git6ec29ef.fc23.x86_64 19 | * ostree-2015.11-2.fc23.x86_64 20 | 21 | If you're new to Atomic and want to give it a try, the easiest way is to use Vagrant. You can grab the Vagrant boxes with `vagrant init fedora/23-atomic-host` and then use `vagrant up`. If you're already using the two-week releases with Vagrant, just start your box and do `sudo atomic host upgrade` to grab the latest bits. (Note that there are already newer bits in the Fedora Atomic Host tree, so you should probably do an upgrade anyway!) 22 | 23 | The Atomic release is produced by the Fedora Cloud Working Group. We are always looking for additional contributors and folks to help test the releases. If you have questions about the Fedora Atomic release, find us on Freenode in #fedora-cloud or on [cloud@lists.fedoraproject.org](https://admin.fedoraproject.org/mailman/listinfo/cloud). 24 | -------------------------------------------------------------------------------- /source/blog/2016-01-22-atomic-app-0-4-0.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Atomic App 0.4.0 Released! 3 | author: cdrage 4 | date: 2016-01-22 15:53:00 UTC 5 | tags: atomic app, nulecule, composite apps, developers, alm, application lifecycle 6 | comments: true 7 | published: true 8 | --- 9 | 10 | A fast release since 0.3.1, we've now released [0.4.0](https://github.com/projectatomic/atomicapp/releases) of [Atomic App](http://www.projectatomic.io/docs/atomicapp/)! 11 | 12 | Our biggest change is the renaming of `atomicapp install` to `atomicapp fetch`. 13 | 14 | In order to fetch the container from the `atomic` cli, you are required to use the `run` command and pass the `--mode=fetch` parameters. 15 | 16 | READMORE 17 | 18 | ```sh 19 | atomic run projectatomic/myapp --mode=fetch --destination ./ 20 | ``` 21 | 22 | Within `atomicapp` you may simply use fetch. 23 | 24 | ```sh 25 | atomicapp fetch projectatomic/myapp --destination ./ 26 | ``` 27 | 28 | The main features of this release are: 29 | 30 | * Renaming install to fetch 31 | * Enabling users to pass an answers file as a URL `atomicapp run projectatomic/atomicapp -a https://foobar.com/answers.conf` 32 | 33 | ## Atomic App 34 | 35 | Many thanks for everyone who committed to this release! 36 | 37 | As we continue to push towards a 1.0.0 release, we highly appreciate any comments or contributions to the Atomic App [repo](https://github.com/projectatomic/atomicapp). If you have any questions about Atomic App or Nulecule, visit the #nulecule channel on Freenode or ask on the [container-tools](https://www.redhat.com/mailman/listinfo/container-tools) mailing list. 38 | -------------------------------------------------------------------------------- /source/blog/2016-02-19-atomic-app-0-4-2.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Atomic App 0.4.2 Released! 3 | author: cdrage 4 | date: 2016-02-19 20:30:00 UTC 5 | tags: atomic app, nulecule, composite apps, developers, alm, application lifecycle 6 | comments: true 7 | published: true 8 | --- 9 | 10 | We've now released [0.4.2](https://github.com/projectatomic/atomicapp/releases) of [Atomic App](http://www.projectatomic.io/docs/atomicapp/)! 11 | 12 | As we get closer to 1.0.0, we are focusing on testing and bug fixes before our grand release. 13 | 14 | The changes to `atomicapp` in this week's release are: 15 | 16 | __Features:__ 17 | 18 | - Meta data is now an optional requirement when building Nuleculized applications 19 | 20 | READMORE 21 | 22 | __User Interaction:__ 23 | 24 | - Relative paths are now supported for provider configuration data 25 | - Raise on missing artifact folders or files 26 | - Raise on failure of Docker image retrieval 27 | 28 | __Bug Fixes:__ 29 | 30 | - Label fixes for `atomic` cli interaction 31 | 32 | __Miscellaneous:__ 33 | 34 | - Unneeded Dockerfiles and redundant licenses removed from testing suite 35 | - All references to `install` have now been removed in favor of `fetch` 36 | 37 | ## Atomic App 38 | 39 | Many thanks for everyone who committed to this release! 40 | 41 | As we continue to push towards a 1.0.0 release, we highly appreciate any comments or contributions to the Atomic App [repo](https://github.com/projectatomic/atomicapp). If you have any questions about Atomic App or Nulecule, visit the #nulecule channel on Freenode or ask on the [container-tools](https://www.redhat.com/mailman/listinfo/container-tools) mailing list. 42 | -------------------------------------------------------------------------------- /source/blog/2016-03-01-new-centos-atomic-host-images-available-for-download.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: New CentOS Atomic Host Images Available for Download 3 | author: jbrooks 4 | date: 2016-03-01 13:20:31 UTC 5 | tags: centos, docker, kubernetes 6 | comments: true 7 | published: true 8 | --- 9 | The CentOS Atomic SIG has released new images and an updated filesystem tree for CentOS Atomic Host. This includes a [patched glibc](https://access.redhat.com/articles/2161461) and a refreshed set of Kubernetes packages, among other updates. All users running CentOS Atomic Host in production should update as soon as possible. 10 | 11 | An updated version of CentOS Atomic Host (version 7.20160224) is now available for download. CentOS Atomic Host is a lean operating system designed to run Docker containers, built from standard CentOS 7 RPMs, and tracking the component versions included in Red Hat Enterprise Linux Atomic Host. 12 | 13 | READMORE 14 | 15 | CentOS Atomic Host is available as a VirtualBox or libvirt-formatted Vagrant box, or as an installable ISO, qcow2 or Amazon Machine image. These images are available for download at [cloud.centos.org](http://cloud.centos.org/centos/7/atomic/images/). The backing ostree repo is published to [mirror.centos.org](http://mirror.centos.org/centos/7/atomic/x86_64/repo). 16 | 17 | CentOS Atomic Host includes these core component versions: 18 | 19 | * kernel-3.10.0-327.10.1.el7.x86_64 20 | * cloud-init-0.7.5-10.el7.centos.1.x86_64 21 | * atomic-1.6-6.gitca1e384.el7.x86_64 22 | * kubernetes-1.2.0-0.6.alpha1.git8632732.el7.x86_64 23 | * etcd-2.2.2-5.el7.x86_64 24 | * ostree-2016.1-2.atomic.el7.x86_64 25 | * docker-1.8.2-10.el7.centos.x86_64 26 | * flannel-0.5.3-9.el7.x86_64 27 | 28 | For more information about the release, check out the [announcement post](http://seven.centos.org/2016/02/new-centos-atomic-host-images-available-for-download/) over at the CentOS Project blog. 29 | -------------------------------------------------------------------------------- /source/blog/2016-03-01-project-atomic-gsoc-2016.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Project Atomic in GSOC 2016 3 | author: jberkus 4 | date: 2016-03-01 12:51 UTC 5 | tags: atomic, gsoc, rpm-ostree, atomic host, fedora 6 | comments: true 7 | published: true 8 | --- 9 | Project Atomic will be participating in [Google Summer of Code](https://summerofcode.withgoogle.com/organizations/) for the first time this year. 10 | So if you are a student, consider spending your summer (or winter in the Southern hemisphere) 11 | hacking on container technology. If you know a student, encourage them to apply. 12 | 13 | We are participating as part of Fedora, so specifically we're looking for work on 14 | any or all of the projects which are part of Fedora Atomic Host. We have a list of 15 | ideas on [our GSOC Page](/community/gsoc), and more detail on the 16 | [Fedora GSOC Ideas wiki page](https://fedoraproject.org/wiki/Summer_coding_ideas_for_2016). 17 | But, of course, you may have even better ideas for an interesting project! 18 | 19 | READMORE 20 | 21 | Applications will [open on March 14th, and are due by March 22 | 25th](https://developers.google.com/open-source/gsoc/timeline). But you can 23 | get started now! Get to know us by joining the [atomic-devel mailing list](https://lists.projectatomic.io/mailman/listinfo/atomic-devel) 24 | and pitching your GSOC project idea, or meet our mentors and contributor 25 | on #atomic or #fedora-cloud on IRC.freenode.net. 26 | -------------------------------------------------------------------------------- /source/blog/2016-03-02-atomic-app-0-4-3.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Atomic App 0.4.3 Release with New Logging UI 3 | author: cdrage 4 | date: 2016-03-02 23:00:00 UTC 5 | tags: atomic app, nulecule, composite apps, developers, alm, application lifecycle 6 | comments: true 7 | published: true 8 | --- 9 | We've now released [0.4.3](https://github.com/projectatomic/atomicapp/releases) of [Atomic App](http://www.projectatomic.io/docs/atomicapp/)! 10 | 11 | This will probably be our last release before 1.0.0. 12 | 13 | With this release, we've re-factored our logging formatter making it easier to decipher between information, debug, warnings, and errors. 14 | 15 | READMORE 16 | 17 | ![logger](/images/atomicapp-logger.png) 18 | 19 | You are also able to now specify the logging format you'd like to output via the command line: 20 | 21 | ``` 22 | --logtype {cockpit,color,nocolor,none} 23 | Override the default logging output. The options are: 24 | nocolor: we will only log to stdout; color: log to 25 | stdout with color; cockpit: used with cockpit 26 | integration; none: atomicapp will disable any logging. 27 | If nothing is set and logging to file then 'nocolor' 28 | by default. If nothing is set and logging to tty then 29 | 'color' by default. 30 | ``` 31 | 32 | The main changes to `atomicapp` in this week's release are: 33 | 34 | ## Features 35 | 36 | - A new logging mechanism that outputs color-coordinated logging messages 37 | - Added CLI commands for color, nocolor, cockpit and 'none' output 38 | 39 | 40 | ## UI 41 | 42 | - Failure on finding no artifacts 43 | 44 | ## Other 45 | 46 | - README.md / doc updates 47 | 48 | ## Atomic App 49 | 50 | Many thanks for everyone who committed to this release! 51 | 52 | As we continue to push towards a 1.0.0 release, we highly appreciate any comments or contributions to the Atomic App [repo](https://github.com/projectatomic/atomicapp). If you have any questions about Atomic App or Nulecule, visit the #nulecule channel on Freenode or ask on the [container-tools](https://www.redhat.com/mailman/listinfo/container-tools) mailing list. 53 | -------------------------------------------------------------------------------- /source/blog/2016-03-16-atomic-app-044-release.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Atomic App 0.4.4 Released 3 | author: cdrage 4 | date: 2016-03-16 17:30:00 UTC 5 | tags: atomicapp, Nulecule, releases 6 | published: true 7 | comments: true 8 | --- 9 | 10 | Atomic App version 0.4.4 has been released. This release includes a major update to our documentation as well as the user experience when deploying an Atomic App. 11 | 12 | READMORE 13 | 14 | The main features are: 15 | 16 | - Major update to documentation 17 | - Cleaner logging output 18 | - Error-out validation on JSON/YAML 19 | 20 | UI: 21 | 22 | - Fix `--version` output on CLI 23 | - Handle docker exception errors 24 | - Inform on wrong provider name provided within answers.conf 25 | 26 | Other: 27 | 28 | - Fix requirements on `make test` 29 | 30 | You can download Atomic App from [the Github repository](https://github.com/projectatomic/atomicapp), or as part of [Atomic Host](http://www.projectatomic.io/download/). 31 | 32 | For a full list of changes between 0.4.4 and 0.4.3 please see [the commit log](https://github.com/projectatomic/atomicapp/commits/0.4.4). 33 | -------------------------------------------------------------------------------- /source/blog/2016-03-31-atomic-app-0-4-5-release.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Atomic App 0.4.5 Released 3 | author: cdrage 4 | date: 2016-03-31 18:10:00 UTC 5 | tags: atomicapp, Nulecule, releases 6 | published: true 7 | comments: true 8 | --- 9 | Atomic App verison 0.4.5 has been released! In this minor release of Atomic App we make some changes to the UI output as well as fix a few provider-specific bugs. 10 | 11 | READMORE 12 | 13 | The main features of this release are: 14 | 15 | - Cleaner logging output 16 | - More prominent output when Atomic App asks for a missing answers variable 17 | - Multi-line artifact support for the Docker provider 18 | 19 | Other features include: 20 | 21 | - Update documentation on cli comparison 22 | - Move kubeconfig parsing to a separate class 23 | - Refactor cli exceptions code 24 | 25 | Want to get started using Atomic App? Have a look at our extensive [start guide](https://github.com/projectatomic/atomicapp/blob/master/docs/start_guide.md), or use Atomic App as part of the Atomic CLI on an [Atomic Host](http://www.projectatomic.io/download/). 26 | 27 | For a full list of changes between 0.4.5 and 0.4.5 please see [the commit log](https://github.com/projectatomic/atomicapp/commits/0.4.5). 28 | -------------------------------------------------------------------------------- /source/blog/2016-04-11-cockpit-kubernetes-volumes-0.101.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Cockpit Does Kubernetes Data Volumes 3 | author: stef 4 | date: 2016-04-11 15:45:32 UTC 5 | tags: cockpit, linux, technical, kubernetes 6 | published: true 7 | comments: true 8 | --- 9 | 10 | Cockpit is the [modern Linux admin interface](http://cockpit-project.org/). There's a new release every week. Here are the highlights from this weeks 0.101 release. 11 | 12 | ### Kubernetes Volumes 13 | 14 | You can now set up Kubernetes [persistent volume claims](http://kubernetes.io/docs/user-guide/persistent-volumes/) through the Cockpit cluster admin interface. These volumes are used to store persistent container data and possibly share them between containers. Each container pod declares the volumes it needs, and when deploying such an application admins configure the locations to store the data in those volumes. 15 | 16 | READMORE 17 | 18 | Take a look: 19 | 20 | 21 | 22 | ### Show SELinux Failure Messages Properly 23 | 24 | As a follow up from last week, several bug fixes landed in the new SELinux troubleshooting support. 25 | 26 | ### Try It Out 27 | 28 | Cockpit 0.101 is available now: 29 | 30 | * [For your Linux system](http://cockpit-project.org/running.html) 31 | * [Source Tarball](https://github.com/cockpit-project/cockpit/releases/tag/0.101) 32 | * [Fedora 24](https://bodhi.fedoraproject.org/updates/cockpit-0.101-1.fc24) 33 | * [COPR for Fedora 23, CentOS, and RHEL](https://copr.fedoraproject.org/coprs/g/cockpit/cockpit-preview/) 34 | -------------------------------------------------------------------------------- /source/blog/2016-04-11-new-centos-atomic-host-release-with-docker-1-9-1.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: New CentOS Atomic Host Release, with Docker 1.9.1 3 | author: jbrooks 4 | date: 2016-04-11 18:00:00 UTC 5 | tags: docker, kubernetes, centos 6 | published: true 7 | comments: true 8 | --- 9 | 10 | An updated version of CentOS Atomic Host (version 7.20160404) is now available for [download](https://wiki.centos.org/SpecialInterestGroup/Atomic/Download), featuring significant updates to Docker (1.9.1) and to the [atomic run tool](https://github.com/projectatomic/atomic). 11 | 12 | CentOS Atomic Host is a lean operating system designed to run Docker containers, built from standard CentOS 7 RPMs, and tracking the component versions included in Red Hat Enterprise Linux Atomic Host. 13 | 14 | Version 1.9 of the atomic run tool now includes support for [storage backend migration](https://github.com/projectatomic/atomic/blob/master/docs/atomic-migrate.1.md), for downloading and deploying [specific atomic](https://github.com/projectatomic/atomic/blob/master/docs/atomic-host.1.md) [tree versions](http://blog.verbum.org/2015/12/15/new-atomic-host-verb-rpm-ostree-deploy/), and for displaying process information from all containers running on a host. 15 | 16 | CentOS Atomic Host includes these core component versions: 17 | 18 | * docker-1.9.1-25.el7.centos.x86_64 19 | * kubernetes-1.2.0-0.9.alpha1.gitb57e8bd.el7.x86_64 20 | * kernel-3.10.0-327.13.1.el7.x86_64 21 | * atomic-1.9-4.gitff44c6a.el7.x86_64 22 | * flannel-0.5.3-9.el7.x86_64 23 | * ostree-2016.1-2.atomic.el7.x86_64 24 | * etcd-2.2.5-1.el7.x86_64 25 | * cloud-init-0.7.5-10.el7.centos.1.x86_64 26 | 27 | For more information on the new release, check out [this post](http://seven.centos.org/2016/04/download-updated-centos-atomic-host-today/) on the [CentOS blog](http://seven.centos.org/). 28 | -------------------------------------------------------------------------------- /source/blog/2016-04-19-cockpit-docker-restart-policy-0.102.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Cockpit with Docker Restart Policy 3 | author: stef 4 | date: 2016-04-19 15:00:00 UTC 5 | tags: cockpit, linux, technical, kubernetes 6 | published: true 7 | comments: true 8 | --- 9 | 10 | Cockpit is the [modern Linux admin interface](http://cockpit-project.org/). There's a new release every week. Here are the highlights from this weeks 0.102 release. 11 | 12 | READMORE 13 | 14 | ## Docker Restart Policy 15 | 16 | When running a Docker container in Cockpit, you can now set the restart policy, so when the docker daemon restarts the containers will be restarted too. Justin Robertson contributed this feature. Take a look. 17 | 18 | 19 | 20 | ## Single Dialog for Creating Logical Volumes 21 | 22 | The storage interface in Cockpit now has a single combined dialog when creating logical volumes. 23 | This is a first tiny step towards advanced LVM2 features such as RAID layouts and caches. The dialog will get more fields and more interesting behavior as we implement more of the features offered by LVM2, such as the various RAID levels, as indicated by the hidden options for the "Purpose" and "Layout" fields. 24 | 25 | ![Single dialog for logical volumes](cockpit-logical-volume-one-dialog.png) 26 | 27 | ## Storage Interface Now Available on Debian 28 | 29 | The storage interface in Cockpit has been enabled and built on Debian. The 30 | [storaged API](https://github.com/storaged-project/storaged/) is now available on Debian too. 31 | 32 | ## Don't Distribute jshint Due to License 33 | 34 | We stopped distributing [jshint](http://jshint.com/) or requiring it as a build dependency due 35 | to its [controversial license](https://github.com/jshint/jshint/issues/1234). 36 | 37 | ## Try It Out 38 | 39 | Cockpit 0.102 is available now: 40 | 41 | * [For your Linux system](http://cockpit-project.org/running.html) 42 | * [Source Tarball](https://github.com/cockpit-project/cockpit/releases/tag/0.102) 43 | * [Fedora 24](https://bodhi.fedoraproject.org/updates/cockpit-0.102-1.fc24) 44 | * [COPR for Fedora 23, CentOS and RHEL](https://copr.fedoraproject.org/coprs/g/cockpit/cockpit-preview/) 45 | -------------------------------------------------------------------------------- /source/blog/2016-04-26-postgresql-ha-kubernetes.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Video - PostgreSQL HA with Kubernetes and Patroni 3 | author: jberkus 4 | date: 2016-04-26 22:50:00 UTC 5 | tags: kubernetes, database, high availability, atomic 6 | published: true 7 | comments: true 8 | --- 9 | 10 | I'm going to begin our video series here on the Project Atomic blog with a video of my presentation from KubeCon 2016, "Full Automatic Database." This presentation explains the design of a prototype high availability version of PostgreSQL, using Kubernetes on Atomic Host. 11 | 12 | READMORE 13 | 14 | 15 | 16 | In addition to sharing the video with you, this also explains a bit how I got into containers starting from the world of databases. Container infrastructures, particularly orchestrators like Kubernetes, offer a lot of opportunities to make up for the lack of automation in the database platform. 17 | 18 | Right now, [my little project for this](https://github.com/jberkus/atomicdb) is just a prototype. I'm working on some upstream dependencies in order to make it fully bulletproof and feature-complete. I'll be posting more about that later. 19 | 20 | More videos on this blog weekly from here on out. 21 | -------------------------------------------------------------------------------- /source/blog/2016-04-28-gsoc-projects-accepted.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: GSOC Atomic, Cockpit Students Selected 3 | date: 2016-04-28 15:00:00 UTC 4 | author: jberkus 5 | tags: GSOC, atomic, cockpit 6 | published: true 7 | comments: true 8 | --- 9 | 10 | The students have been selected for Google Summer of Code 2016. [Through the Fedora Project](https://communityblog.fedoraproject.org/fedora-google-summer-of-code-2016/), Project Atomic has three students who will be working on projects this summer: 11 | 12 | * Allan E. Gardner, in RPM-OSTree: [Drop privileges for HTTP fetches](https://fedoraproject.org/wiki/Summer_coding_ideas_for_2016#Drop_privileges_for_HTTP_fetches) 13 | * Amila Sampath, in Atomic Host, [Automatic Atomic Host Updates](https://fedoraproject.org/wiki/Summer_coding_ideas_for_2016#Automatic_Atomic_Host_Updates) 14 | * Harish Anand, in Cockpit, [Support For Systemd Timers](https://fedoraproject.org/wiki/Summer_coding_ideas_for_2016#Cockpit_support_for_systemd_timers) 15 | 16 | We are very excited to be participating in GSOC with Fedora, and are looking forward to the amazing things these students will do. 17 | -------------------------------------------------------------------------------- /source/blog/2016-05-09-fedora-24-test-day-tomorrow-may-10-2016.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Fedora 24 Test Day Tomorrow (May 10, 2016) 3 | author: jzb 4 | date: 2016-05-09 17:29:41 UTC 5 | tags: test day, fedora, atomic 6 | published: true 7 | comments: true 8 | --- 9 | Want to help make Fedora Atomic Host even better? [Join us tomorrow for the Fedora Cloud Test Day](https://fedoraproject.org/w/index.php?title=Test_Day:2016_05_10_Cloud), where we'll be banging on the Atomic Host image for Fedora. As always, we're looking for many hands to help put the image through its paces. 10 | 11 | READMORE 12 | 13 | To participate tomorrow, you'll need a system with Vagrant, libvirt/KVM, or access to OpenStack or another IaaS that can consume the qcow or raw images for Atomic. 14 | 15 | Grab the image from the [wiki](http://fedoraproject.org/wiki/Test_Day:2016_05_10_Cloud), and then check out the [test results page](http://testdays.fedorainfracloud.org/events/7) to see the tests you should run and report the results. '' 16 | 17 | We also encourage "freestyle" testing as well, so if you have use cases that go beyond the described tests please do put the image through those tests as well. 18 | 19 | Found bugs? Be sure to [report them on Bugzilla](https://bugzilla.redhat.com/). 20 | 21 | ## Everyday is Like Test Day 22 | 23 | To (badly) [paraphrase Morrissey](https://www.youtube.com/watch?v=bf6Xwb03jTE), "every day is like test day." If you can't make it tomorrow, no sweat. You can play along at home any time. 24 | 25 | Fedora nightlies are listed [on Adam Williamson's site](https://www.happyassassin.net/nightlies.html). Grab the most recent images and have fun! 26 | 27 | ## Communicating During and After Test Days 28 | 29 | We'll have folks watching #fedora-test-day on Freenode, and (as always) folks in #fedora-cloud and #atomic. If you have questions, or think you can help others, please join in! 30 | 31 | Also, there's always the [cloud@lists.fedoraproject.org](https://lists.fedoraproject.org/admin/lists/cloud.lists.fedoraproject.org/) mailing list for additional conversations around the Fedora Atomic Host images. Please sign up, and feel free to chime in any time with questions, comments, suggestions, or to raise a hand to help out. See you on Test Day! 32 | -------------------------------------------------------------------------------- /source/blog/2016-06-15-atomic-app-0-6-0-release.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Atomic App 0.6.0 Released—Native Kubernetes API Integration 3 | author: cdrage 4 | date: 2016-06-15 16:55:00 UTC 5 | tags: atomicapp, Nulecule, releases 6 | published: true 7 | comments: true 8 | --- 9 | This release of Atomic App introduces a large code-base change related to our Kubernetes provider. 10 | 11 | We incorporate major changes to the Kubernetes provider. With this release, we replace the usage of `kubectl` with the *requests* Python library and the Kubernetes HTTP API end-point. This change results in faster deployment, smaller image sizes, and increased detail in logging messages. 12 | 13 | The main features of this release are: 14 | 15 | * Kubectl to API conversion 16 | * Removal of ASCII art 17 | 18 | READMORE 19 | 20 | ## Kubernetes `kubectl` to API Conversion 21 | 22 | Changes to the Kubernetes provider introduces cleaner and more detailed logging messages for application deployment. 23 | 24 | ``` 25 | ▶ sudo atomicapp run projectatomic/helloapache --destination helloapache 26 | INFO :: Atomic App: 0.6.0 - Mode: Run 27 | INFO :: Unpacking image projectatomic/helloapache to helloapache 28 | INFO :: Skipping pulling docker image: projectatomic/helloapache 29 | INFO :: Extracting Nulecule data from image projectatomic/helloapache to helloapache 30 | INFO :: App exists locally and no update requested 31 | INFO :: Using namespace default 32 | INFO :: Deploying to Kubernetes 33 | INFO :: Pods 'helloapache' successfully created 34 | 35 | Your application resides in helloapache 36 | Please use this directory for managing your application 37 | ``` 38 | 39 | Want to get started using Atomic App? Have a look at our extensive [start guide](https://github.com/projectatomic/atomicapp/blob/master/docs/start_guide.md), or use Atomic App as part of the Atomic CLI on an [Atomic Host](http://www.projectatomic.io/download/). 40 | 41 | For a full list of changes between 0.5.2 and the 0.6.0 please see [the commit log](https://github.com/projectatomic/atomicapp/commits/0.6.0). 42 | -------------------------------------------------------------------------------- /source/blog/2016-06-28-rh-summit-demos.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Live Demos at Red Hat Summit 2016 3 | author: jberkus 4 | date: 2016-06-28 01:00:00 UTC 5 | tags: atomic host, cockpit, security, atomicapp, events 6 | published: true 7 | comments: true 8 | --- 9 | 10 | If you're at Red Hat Summit, you might want to come by the Atomic Pod in Community Central and see the [Sub-Atomic Cluster](/blog/2016/06/micro-cluster-part-2/). More usefully, we'll be having a series of live demos by various contributors to the Atomic suite of projects, including: 11 | 12 | * Tuesday, 12:45pm: Using Cockpit to manage Kubernetes and Registry with Stef Walter and Peter Volpe 13 | * Tuesday, 4:45pm: Fully automated configure of Kubernetes with Ansible, Jamie Duncan 14 | * Tuesday, 6:00pm: Atomic Scan with Dan Walsh 15 | * Wednesday, 12:15pm: Container Security Tools with Mrunal Patel 16 | * Wednesday, 6:00pm: Atomic Scan with Dan Walsh 17 | * Thursday, 11:00am: Building Multi-container Apps with Dusty Mabe 18 | 19 | The Atomic Pod is in Community Central on the main expo floor, right next to the OpenShift Corner. 20 | 21 | We will be attempting to schedule additional demonstrations as folks become available, so check back on this page for more. 22 | -------------------------------------------------------------------------------- /source/blog/2016-07-06-commissaire_video_2.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Atomic Video: Commissaire Basic Usage" 3 | author: smilner 4 | date: 2016-07-06 11:00:00 UTC 5 | tags: commissaire, video, tutorial 6 | published: true 7 | comments: true 8 | --- 9 | Last month we introduced [Commissaire](http://www.projectatomic.io/blog/2016/05/introducing_commissaire/) 10 | giving a quick overview of features and architecture. 11 | 12 | READMORE 13 | 14 | This month we wanted to show how one can: 15 | 16 | * Run a Commissaire server 17 | * Configure commctl for use with Commissaire 18 | * Create a new cluster via commctl 19 | * Bootstrap a new host node via commctl 20 | * ssh to a host node via commctl 21 | 22 | [![Commissaire Intro](http://img.youtube.com/vi/-hj4rcv3tbo/0.jpg)](https://www.youtube.com/watch?v=-hj4rcv3tbo) 23 | 24 | ## Getting Involved 25 | 26 | * Freenode IRC: #atomic 27 | * Email List: atomic-devel@projectatomic.io 28 | * Commissaire [Source](https://github.com/projectatomic/commissaire) 29 | * Commctl [Source](https://github.com/projectatomic/commctl) 30 | * [Documentation](http://commissaire.readthedocs.io/en/latest/) 31 | -------------------------------------------------------------------------------- /source/blog/2016-10-28-atomic-events.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Upcoming events November 2016 3 | author: jberkus 4 | date: 2016-10-28 12:00:00 UTC 5 | published: true 6 | comments: true 7 | tags: events, atomic 8 | --- 9 | 10 | Members of the Atomic Team will be at a Red Hat booth or table at the following events in November: 11 | 12 | * [ContainerDays NYC](http://dynamicinfradays.org/events/2016-nyc/) on Nov. 3rd, New York 13 | * [KubeCon/CNCFCon](http://events.linuxfoundation.org/events/kubecon) on Nov. 7th, Seattle 14 | 15 | If you're at either event, drop by the booth or table and say hello! 16 | -------------------------------------------------------------------------------- /source/blog/2016-12-22-Kubernetes-returns-to-fedora-atomic.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: 'Kubernetes is back in Fedora Atomic 25 base' 3 | author: jberkus 4 | date: 2016-12-22 18:00:00 UTC 5 | tags: fedora, atomic, kubernetes 6 | published: true 7 | comments: true 8 | --- 9 | 10 | **TL;DR**: If you are a production user of Kubernetes on Fedora Atomic Host, you 11 | can now upgrade to Fedora Atomic Host 25. Kubernetes 1.4 is part of the base 12 | image now. 13 | 14 | Per [our previous announcement](/blog/2016/12/notice-to-kubernetes-atomic-users/), we wanted to make a change to Fedora Atomic Host, 15 | and in concert with the Kubernetes community move to an entirely containerized 16 | install of Kubernetes, which would make it easier for users to choose their 17 | Kubernetes version or distribution. However, some of the upstream technical 18 | issues with that change will take longer than we expected to resolve. As such, 19 | we have added Kubernetes and Flannel back into the base image for Fedora 20 | Atomic 25, as of today's OStree. 21 | 22 | If you are a production user of Fedora Atomic 24 with Kubernetes, you may now 23 | [rebase and upgrade](/blog/2016/11/fedora-atomic-25-released/). Please make sure to go directly to the 2016-12-21 or later 24 | OSTree image, skipping any earlier ones for version 25. 25 | 26 | Do note that the version of Kubernetes which ships with 27 | version 25 is Kubernetes 1.4.6. As such, you should test to make sure no 28 | incompatibilities have been introduced by the Kubernetes upgrade before rebasing 29 | production servers. While the goal of the Kubernetes project it to maintain 30 | complete backwards compatibility, there may be minor exceptions, especially for 31 | specific addons. 32 | 33 | At this point, we plan to transition to containerized Kubernetes for Fedora 34 | Atomic Host 26, in mid-2017. At that point, we expect the bugs to be worked out, 35 | and will be providing a migration guide. If you can help with testing and 36 | feedback, please do so through our [online community](/community/). 37 | 38 | Users of Fedora Atomic Host who do not use Kubernetes or Flannel will be 39 | largely unaffected by these changes. 40 | -------------------------------------------------------------------------------- /source/blog/2017-03-10-cockpit-134.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Cockpit 134 Released 3 | author: stef 4 | date: 2017-03-10 18:00:00 UTC 5 | tags: cockpit, linux 6 | published: true 7 | comments: true 8 | --- 9 | 10 | Cockpit is the [modern Linux admin interface](http://cockpit-project.org/). We release regularly. 11 | Here are the release notes from version 134. 12 | 13 | READMORE 14 | 15 | ### Login page is now translatable 16 | 17 | The majority of Cockpit has long been translatable. Since the login page is a bit of a special case, it required some 18 | special attention to make that also play well with the language display settings. Take a look at the video below for a demo. 19 | Check out the Zanata link below, it's very easy to contribute translations to Cockpit. 20 | At this time our top 3 translations (>90%) are Polish (pl), Ukranian (uk) and Chinese (zh-CN). Every bit of help 21 | here is greatly appreciated and a big thank you to our contributors! 22 | 23 | [Cockpit translations](https://fedora.zanata.org/project/view/cockpit?dswid=-8859) 24 | 25 | 26 | 27 | ### Show message of the day on the System page 28 | 29 | Cockpit now supports one more feature it was previously missing compared to the command line login: the ```System``` 30 | page now shows the current message of the day (```/etc/motd```). When dismissed by clicking on the ```X``` close button, 31 | the message is hidden until it changes. 32 | 33 | ![Message of the day](http://cockpit-project.org/blog/images/cockpit-motd.png) 34 | 35 | ### Expose fewer system service actions 36 | 37 | Cockpit previously exposed systemd unit actions such as ```Reload or Try Restart``` which are primarily intended for 38 | scripts. The dropdown list now only shows actions which are useful for interactive human usage: ```Start```, ```Stop```, 39 | ```Restart``` and ```Reload```. 40 | 41 | ![Service actions](http://cockpit-project.org/blog/images/cockpit-service-actions.png) 42 | 43 | ### Try it out 44 | 45 | Cockpit 134 is available now: 46 | 47 | * [For your Linux system](http://cockpit-project.org/running.html) 48 | * [Source Tarball](https://github.com/cockpit-project/cockpit/releases/tag/134) 49 | * [Fedora 25](https://bodhi.fedoraproject.org/updates/cockpit-134-1.fc25) 50 | -------------------------------------------------------------------------------- /source/blog/2017-06-20-cockpit-143.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Cockpit 143 with New Software Updates Page 3 | author: stef 4 | date: 2017-06-20 18:00:00 UTC 5 | tags: cockpit, linux 6 | published: true 7 | comments: true 8 | --- 9 | 10 | Cockpit is the [modern Linux admin interface](http://cockpit-project.org/). We release regularly. 11 | Here are the release notes from version 143. 12 | 13 | ### "Software Updates" page for package based operating systems 14 | 15 | There is a new "Software Updates" page for classic dnf/yum/apt based systems, 16 | to complement the already existing one for OSTree on 17 | [Atomic](https://www.projectatomic.io). This uses the [PackageKit 18 | API](https://www.freedesktop.org/software/PackageKit/) for platform 19 | independence. This feature is shipped in the new `cockpit-packagekit` 20 | sub-package. 21 | 22 | READMORE 23 | 24 | See it in action: 25 | 26 | 27 | 28 | ### Inline VNC consoles 29 | 30 | The inline VNC console advertised in [Cockpit 142](http://cockpit-project.org/blog/cockpit-142.html) 31 | was not actually working from the released `cockpit-machine` package due to a 32 | packaging problem. Cockpit 143 corrects this problem. Thanks to Marek Libra! 33 | 34 | ### Kubernetes RBAC authorization support 35 | 36 | The Kubernetes page can now be used to log into Kubernetes installations that 37 | use [RBAC authorization](https://kubernetes.io/docs/admin/authorization/rbac/). 38 | 39 | ### RPM packages for IBM Z systems 40 | 41 | The `cockpit-docker` RPM package is now being built on the s390x (IBM Z 42 | Systems) architecture, as the Fedora Docker package is available there. 43 | ([#1462113](https://bugzilla.redhat.com/show_bug.cgi?id=1462113)) 44 | 45 | ### Try it out 46 | 47 | Cockpit 143 is available now: 48 | 49 | * [For your Linux system](http://cockpit-project.org/running.html) 50 | * [Source Tarball](https://github.com/cockpit-project/cockpit/releases/tag/143) 51 | * [Fedora 26](https://bodhi.fedoraproject.org/updates/cockpit-143-1.fc26) 52 | -------------------------------------------------------------------------------- /source/blog/2017-06-21-centos-atomic-security-update-1705.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: CentOS Atomic Host 1705.1 Security Update 3 | author: jbrooks 4 | date: 2017-06-21 18:00:00 UTC 5 | tags: centos, atomic host 6 | comments: true 7 | published: true 8 | --- 9 | 10 | We've upgraded the ostree repository for CentOS Atomic Host (v7.1705.1) to 11 | include updates of the packages affected by [the "Stack Guard" vulnerability](https://access.redhat.com/security/vulnerabilities/stackguard). 12 | 13 | Please update your CentOS Atomic Host at the next opportunity, with the command: 14 | 15 | ``` 16 | atomic host upgrade --reboot 17 | ``` 18 | 19 | READMORE 20 | 21 | Upgraded: 22 | 23 | * ca-certificates 2017.2.11-70.1.el7_3 -> 2017.2.14-70.1.el7_3 24 | * glibc 2.17-157.el7_3.2 -> 2.17-157.el7_3.4 25 | * glibc-common 2.17-157.el7_3.2 -> 2.17-157.el7_3.4 26 | * kernel 3.10.0-514.21.1.el7 -> 3.10.0-514.21.2.el7 27 | * python-perf 3.10.0-514.21.1.el7 -> 3.10.0-514.21.2.el7 28 | * rpcbind 0.2.0-38.el7_3 -> 0.2.0-38.el7_3.1 29 | -------------------------------------------------------------------------------- /source/blog/2017-06-27-cockpit-hackfest-0617.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Cockpit Virtual Hackfest 3 | author: stef 4 | date: 2017-06-27 14:00:00 UTC 5 | tags: cockpit, linux, virtualization 6 | published: true 7 | comments: true 8 | --- 9 | 10 | There's a Cockpit Hackfest underway in Karlsruhe, Germany. We're working on the 11 | virtual machine functionality in Cockpit. 12 | 13 | ![Hackfest](hackfest-1.jpg) 14 | 15 | READMORE 16 | 17 | That means interacting with libvirt. Although libvirt has remoting functionality 18 | it has no API that's actually remotable and callable from Cockpit javascript code. 19 | So Lars and Pavel started working on a DBus wrapper for the API. 20 | 21 | At the same time, Martin is working on making the current 22 | [virsh](http://libvirt.org/virshcmdref.html) based access to libvirt more 23 | performant, so we don't block on waiting until the DBus wrapper is done. 24 | 25 | Lots of work was done understanding [redux](http://redux.js.org/). The initial 26 | machines code in Cockpit was written using redux, and we needed to map it's 27 | concept of models and state to the Cockpit way of storing state on the server 28 | and UI concepts like dialogs. Everyone was involved. 29 | 30 | Andreas, Garrett have been working on designs for creating a virtual machine 31 | and editing virtual machines. Dominik started work on implementing that code. 32 | 33 | Marius worked on deletion of virtual machines, and already has a 34 | [pull request](https://github.com/cockpit-project/cockpit/pull/7113) open. 35 | 36 | Stef worked is working on the integration tests for the virtual machine stuff 37 | and is booting nested VMs [using nested images](https://github.com/cockpit-project/cockpit/pull/7117). 38 | 39 | ![Hackfest](hackfest-2.jpg) 40 | 41 | Wheeee. 42 | -------------------------------------------------------------------------------- /source/blog/2017-08-04-cockpit-148.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Cockpit 148 supports Internet Explorer 3 | author: jberkus 4 | date: 2017-08-04 14:00:00 UTC 5 | tags: cockpit, linux 6 | published: true 7 | comments: true 8 | --- 9 | 10 | [Cockpit 148](http://cockpit-project.org/blog/cockpit-148.html) has been released, including support for using Cockpit in Internet Explorer. You can read more about it in [the Cockpit Blog](http://cockpit-project.org/blog/cockpit-148.html). 11 | -------------------------------------------------------------------------------- /source/blog/2017-08-04-crio-week-1.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: This Week in CRI-O 3 | author: jberkus 4 | date: 2017-08-04 18:00:00 UTC 5 | tags: cri-o, containers, kubernetes 6 | published: true 7 | comments: false 8 | --- 9 | 10 | There's been a lot of activity on the CRI-O container runtime project, as well as on their [new blog](https://medium.com/cri-o/introducing-the-cri-o-blog-site-afe603ac5248). The big news is the release of [the CRI-O 1.0 beta](https://medium.com/cri-o/announcing-cri-o-1-0-0-beta-0-f593637343b2), of course. 11 | 12 | Let me summarize the rest for the sake of those catching up with the project. 13 | 14 | READMORE 15 | 16 | Dan Walsh's team is hard at work [packaging CRI-O and skopeo for multiple platforms](https://medium.com/cri-o/making-packages-available-for-other-distributions-33bc8818b44e). This includes RPMs and containers for Fedora, CentOS, Ubuntu, Debian, and SuSE. Mrunal Patel summarized [the goals of the CRI-O project](https://medium.com/cri-o/cri-o-198c84185c94). 17 | 18 | Walsh then announced [support for signed container images](https://medium.com/cri-o/support-for-signed-images-d7d6a0721f8b) in CRI-O. Three days later, Patel announced that [CRI-O now supports configuring Docker storage volumes](https://medium.com/cri-o/cri-o-configurable-image-volume-support-dda7b54f4bda), and Antonio Murdaca explained [how CRI-O handles default registries](https://medium.com/cri-o/default-container-registry-revisited-50b32dd808fe). 19 | 20 | It's been a super-busy week in the CRI-O project, and we can expect the activity to continue through the eventual 1.0 release. 21 | -------------------------------------------------------------------------------- /source/blog/2017-09-27-test-day-for-fedora-27-atomic-cloud-september-29th.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Test Day for Fedora 27 Atomic/Cloud September 29th 3 | author: sayan 4 | date: 2017-09-27 15:30:11 UTC 5 | tags: fedora 6 | comments: true 7 | published: true 8 | --- 9 | 10 | The Fedora 27 Beta is getting close to release, and the [Fedora Atomic Working Group][2] and [Fedora Cloud SIG][3] want to get the community together next week to find and squash bugs. We are organizing a test day for Friday, September 29th. 11 | 12 | READMORE 13 | 14 | During the Test Day, participants can test both Atomic Host content and Fedora Cloud Base content. Vagrant Boxes will be available to test with as well. See the [wiki page][4] for links to artifacts for Atomic Host and Cloud Base Images. We have qcow2, AMIs, and ISO images ready for testing. 15 | 16 | ## How do test days work? 17 | 18 | A test day is an event where anyone can help make sure that changes in Fedora work well in the upcoming release. Fedora community members often participate, but the public is welcome also. You only need to be able to download materials (including some large files), and read and follow technical directions step by step, to contribute. 19 | 20 | The [wiki page][4] for the Atomic/Cloud test day has a lot of good information on what and how to test. After you've done some testing, you can log your results in the test day [web application][5]. If you're available on or around the day of the event, please do some testing and report your results. 21 | 22 | Happy testing, and we hope to see you on test day. 23 | 24 | [1]: https://fedoramagazine.org/wp-content/uploads/2015/03/test-days-945x400.png 25 | [2]: https://fedoraproject.org/wiki/Atomic_WG 26 | [3]: https://fedoraproject.org/wiki/Cloud_SIG 27 | [4]: https://fedoraproject.org/wiki/Test_Day:2017-09-29_Cloud-Atomic_Testday 28 | [5]: http://testdays.fedorainfracloud.org/events/27 29 | -------------------------------------------------------------------------------- /source/blog/2017-10-20-atomic-october-events.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Atomic Events October 2017 3 | author: jberkus 4 | date: 2017-10-20 20:00:00 UTC 5 | published: true 6 | comments: false 7 | tags: atomic, events, cockpit, cri-o 8 | --- 9 | 10 | Project Atomic contributors and projects will be represented at many events 11 | in October. If you're coming to any of these events, drop by 12 | and say hello! 13 | 14 | **All Things Open**: Charlie Drage will be presenting [Kompose: Going from Docker 15 | Compose to Kubernetes and Beyond](https://allthingsopen.org/talk/kompose-going-from-docker-compose-to-kubernetes-and-beyond/). 16 | It's likely that he and Dusty Mabe will also be around the Red Hat booth; drop by. 17 | 18 | **Open Source Summit Europe**: Tomas Tomecek will be presenting [From Dockerfiles to Ansible Container](https://osseu17.sched.com/event/BxIW/from-dockerfiles-to-ansible-container-tomas-tomecek-red-hat) 19 | and Stef Walters will be presenting [Training Machines to be Open Source Contributors](https://osseu17.sched.com/event/ByIY/training-machines-to-be-open-source-contributors-stef-walter-red-hat-inc). 20 | Also, while not strictly part of Atomic, [Container Migration](https://osseu17.sched.com/event/BxIG/container-migration-around-the-world-adrian-reber-red-hat-and-mike-rapoport-ibm-research) 21 | looks pretty cool. Plus, come visit the Red Hat booth where Cockpit contributors will 22 | demonstrate the latest releases of the most modern server GUI. 23 | 24 | **Usenix LISA**: On Sunday, you can choose between [two workshops](https://www.usenix.org/conference/lisa17/training-program): Mark Lamourine's *Container Hosts: CoreOS and Project Atomic* and Ryan Jarvinen's *Hands-on Intro to Kubernetes* We will also have a [BOF on the evening of Wednesday, November 1st](https://www.usenix.org/conference/lisa17/bofs) on Migrating to 25 | Containers, OpenShift, or Atomic Host. Join us in the Garden Room at 7pm. Then on Friday you can learn about [OpenSCAP](https://www.usenix.org/conference/lisa17/conference-program/presentation/preisler) with Martin Preisler and Marek Haicman. Plus, 26 | we'll have Atomic Host and OpenShift contributors at the Red Hat booth. 27 | -------------------------------------------------------------------------------- /source/blog/2018-04-09-test-day-for-fedora-28-atomic-cloud-april-11th.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Test Day for Fedora 28 Atomic/Cloud April 11th 3 | author: sinnykumari 4 | date: 2018-04-09 5 | comments: false 6 | published: true 7 | tags: atomic, fedora, test_day, cloud 8 | --- 9 | 10 | With the Fedora 28 Beta [official release announcement](https://fedoramagazine.org/announcing-fedora-28-beta/), the [Fedora Atomic Working Group](https://fedoraproject.org/wiki/Atomic_WG) and [Fedora Cloud SIG](https://fedoraproject.org/wiki/Cloud_SIG) would like to invite members of the community to join us in finding and squashing bugs. We are organizing a Test Day on Wednesday, April 11th 2018. 11 | 12 | READMORE 13 | 14 | In this Test Day, you can test Fedora Atomic Host, Fedora Atomic Workstation and Fedora Cloud Base content. See the [Fedora Atomic Host Pre-Release Page](https://getfedora.org/en/atomic/prerelease/) for links to the artifacts for Fedora Atomic Host, [here](https://download.fedoraproject.org/pub/fedora/linux/releases/test/28_Beta/AtomicWorkstation/x86_64/iso/Fedora-AtomicWorkstation-ostree-x86_64-28_Beta-1.3.iso) for Atomic Workstation ISO link and the [Alternative Downloads Beta Page](https://alt.fedoraproject.org/prerelease/index.html) for links to Cloud Base Beta images. We have qcow, AMI and ISO images ready for testing. Additionally, Vagrant Boxes will be available for testing as well. 15 | 16 | ## How do test days work? 17 | 18 | A test day is an event where anyone can help make sure that changes in Fedora are working well in the upcoming release. Fedora community members often participate, but the public is welcome also. You only need to be able to download materials (including some large files), and read and follow technical directions step by step, to contribute. 19 | 20 | Need some help on what to test and how to test? Checkout [wiki page](https://fedoraproject.org/wiki/Test_Day:2018-04-11_Cloud-Atomic_Testday) page which provides detailed information about the Atomic/Cloud test day. If you’re available on or around the day of the event, please do some testing . Once you’ve done the testing, make sure to log your test results in the [test day web application](http://testdays.fedorainfracloud.org/events/39). 21 | 22 | Happy testing, and we hope to see you on test day! 23 | -------------------------------------------------------------------------------- /source/blog/2018-05-08-welcome-redhat-coreos.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Welcome to Red Hat CoreOS 3 | author: sanja 4 | date: 2018-05-08 00:00:00 UTC 5 | layout: post 6 | comments: false 7 | categories: 8 | - atomic 9 | - coreos 10 | --- 11 | 12 | ## Welcome to Red Hat CoreOS 13 | 14 | When [Red Hat acquired CoreOS](https://www.redhat.com/en/about/press-releases/red-hat-acquire-coreos-expanding-its-kubernetes-and-containers-leadership), you asked what will become of Project Atomic or Container Linux. Today at Red Hat Summit, we're sharing more details around the acquisition. Customers and community users will benefit from the plans around Tectonic and OpenShift, Container Linux and Atomic Host, as well as Quay. 15 | 16 | Our other popular community projects such as Buildah, Cockpit, and Skopeo continue as usual. Fedora Atomic Workstation already announced that it is now a Fedora initiative with the codename [Team Silverblue](https://teamsilverblue.org), continuing to improve an image-based Fedora Workstation as well as potentially adding GUI tools for pet containers. If you happen to be at Red Hat Summit, check out the Atomic BoF session where you can ask questions and tell us which features you would like to see in the future. Read more about our shared vision for the future at the [CoreOS blog](https://coreos.com/blog/coreos-tech-to-combine-with-red-hat-openshift). 17 | -------------------------------------------------------------------------------- /source/blog/2018-06-20-welcome-to-fedora-coreos.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Announcing the Fedora CoreOS community! 3 | tags: fedora, atomic, coreos 4 | author: dustymabe 5 | date: 2018-06-20 00:00:00 UTC 6 | published: true 7 | comments: false 8 | --- 9 | 10 | # Welcome to Fedora CoreOS 11 | 12 | Earlier this year Red Hat acquired [CoreOS, Inc.](https://www.redhat.com/en/about/press-releases/red-hat-acquire-coreos-expanding-its-kubernetes-and-containers-leadership). 13 | In the past few 14 | months we have been working hard to evaluate the different technologies 15 | in the CoreOS Container Linux and Project Atomic spaces. Since Container 16 | Linux and Atomic Host overlap in functionality quite a bit we have decided 17 | to merge future development of the two projects so that we can combine 18 | our efforts and bring two great communities of people together to solve 19 | future challenges in the transactional update and container operating 20 | system landscape. 21 | 22 | READMORE 23 | 24 | # What does this mean for Atomic Host? 25 | 26 | The last major release of Fedora Atomic Host will most likely be Fedora 27 | 29 Atomic Host. After Fedora 29 we'll recommend you use Fedora CoreOS for 28 | any deployments. The use cases for Fedora CoreOS should overlap with the 29 | existing use cases for Atomic Host, but there may be some use cases that 30 | are left behind as we narrow our focus. Hopefully disruptions will be minimal. 31 | 32 | 33 | # What will happen to the Project Atomic community channels? 34 | 35 | The mailing lists, IRC channels, and GitHub organization will mostly 36 | be retired once the last releases are End Of Life. Please join us on the 37 | new community spaces (more details below)! 38 | 39 | 40 | # Where can I learn more about Fedora CoreOS and get involved? 41 | 42 | - There is a new website and FAQ at [https://coreos.fedoraproject.org](https://coreos.fedoraproject.org). 43 | - There is a mailing list at coreos@lists.fedoraproject.org. 44 | - There is an IRC channel #fedora-coreos on freenode. 45 | - There is a new Discourse board at [https://discussion.fedoraproject.org/c/coreos](https://discussion.fedoraproject.org/c/coreos). 46 | 47 | For future blog posts around containers, please refer to the new website 48 | that is currently under active development. 49 | 50 | We're excited to have the existing Container Linux and Atomic Host 51 | communities working together and we hope you'll join us in making 52 | Fedora CoreOS a success. 53 | -------------------------------------------------------------------------------- /source/blog/2019-11-21-fedora-atomic-host-nearing-eol.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: 'Fedora Atomic Host Nearing End Of Life' 3 | author: dustymabe 4 | date: 2019-11-21 5 | tags: fedora, atomic 6 | published: true 7 | --- 8 | 9 | **TL;DR** *Fedora 29 will be End Of Life [soon](https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/VUK3CJ5LO4ROUH3JTCDVHYAVVYAOCU62/).* 10 | *With it Fedora Atomic Host will have its last incremental release (based on* 11 | *the Fedora 29 stream). Please move to the Fedora CoreOS preview if you can.* 12 | 13 | READMORE 14 | 15 | Last year we [introduced the plans for Fedora CoreOS](https://fedoramagazine.org/announcing-fedora-coreos/) 16 | including that Fedora CoreOS would be the successor to Fedora Atomic Host 17 | and Container Linux (from CoreOS Inc.). As part of that succession 18 | plan we decided that Fedora 29 Atomic Host would be the last stream of 19 | Fedora Atomic Host to be released. 20 | 21 | Fedora 29 Atomic Host has served us well, but with Fedora 29 End of 22 | Life [coming soon](https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/VUK3CJ5LO4ROUH3JTCDVHYAVVYAOCU62/) 23 | , so will the last release of Fedora 29 Atomic Host. 24 | The next release of Fedora 29 Atomic Host (in the next few weeks) will be 25 | the last two-week release. It will contain all of the latest content 26 | from Fedora 29. After that release, Fedora 29, and Fedora 29 Atomic 27 | Host will no longer receive any updates. 28 | 29 | Please try out the Fedora CoreOS preview to help us get it towards 30 | stable. Documentation and download links can be found at 31 | [https://getfedora.org/coreos/](https://getfedora.org/coreos/). 32 | -------------------------------------------------------------------------------- /source/calendar.html.haml: -------------------------------------------------------------------------------- 1 | --- 2 | pageable: true 3 | per_page: 1000 4 | --- 5 | 6 | %h1 7 | Archive for 8 | - case page_type 9 | - when 'day' 10 | = Date.new(year, month, day).strftime('%b %e %Y') 11 | - when 'month' 12 | = Date.new(year, month, 1).strftime('%b %Y') 13 | - when 'year' 14 | = year 15 | 16 | - if paginate && num_pages > 1 17 | %p 18 | Page #{page_number} of #{num_pages} 19 | - if prev_page 20 | %p= link_to 'Previous page', prev_page 21 | 22 | %ul 23 | - page_articles.each_with_index do |article, i| 24 | %li 25 | = link_to article.title, article 26 | %span= article.date.strftime('%b %e') 27 | 28 | - if paginate 29 | - if next_page 30 | %p= link_to 'Next page', next_page 31 | -------------------------------------------------------------------------------- /source/community/talks.md: -------------------------------------------------------------------------------- 1 | Talks by Community Members 2 | ========================== 3 | 4 | You may find videos and/or slides from talks about Project Atomic and related subprojects here. 5 | 6 | General 7 | ------- 8 | 9 | Dusty Mabe, Josh Berkus: [Catching Up With Atomic: Retrospective & BOF](https://www.youtube.com/watch?v=3ayxEyGMbd4) 10 | 11 | Containers 12 | ---------- 13 | 14 | See the [full list](https://www.youtube.com/channel/UCmYAQDZIQGm_kPvemBc_qwg/search?query=container) on Youtube. 15 | 16 | Dan Walsh: [Latest Container Technologies](https://www.youtube.com/watch?v=I0cOn1psf5o) 17 | 18 | Antonio Murdaca: [Secure your Kubernetes cluster with CRI-O](https://www.youtube.com/watch?v=xH2I5WcPM4Y) 19 | 20 | Chris Houseknecht: [Ansible Container : Build Better!](https://www.youtube.com/watch?v=TMNayhc9A9A) 21 | 22 | Patrick Uiterwijk, Randy Barlow: [How Fedora's solving the container rebuild problem](https://www.youtube.com/watch?v=Yc5Mq87-DuE) 23 | 24 | Miroslav Suchý: [Catching Bugs In Containers](https://www.youtube.com/watch?v=wHB7i4QaxHU) 25 | 26 | Bill Peck: [Lessons Learned Implementing Builder Containers](https://www.youtube.com/watch?v=8iRIep6dIEE) 27 | 28 | Huamin Chen, Dennis Keefe: [Container Image Storage Compression and Dedupe](https://www.youtube.com/watch?v=sB1QFfaDp0Y) 29 | 30 | Atomic Host/Workstation 31 | ----------------------- 32 | 33 | Matthew Micene, Giuseppe Scrivano: [Moving to Atomic System Containers](https://www.youtube.com/watch?v=6ImTdrKv_Q0) 34 | 35 | Sanja Bonic and Colin Walters: [You want a Clean Desktop OS? Containerize it.](https://www.youtube.com/watch?v=a4IPWlfkJSo) [Slides](https://fedorapeople.org/~walters/2018.01-devconf-desktopcontainers/#/) 36 | 37 | Jan Pazdziora: [Minimizing workstation installation](https://www.youtube.com/watch?v=eWoFpOoA-tE) 38 | 39 | Kalev Lember: [Atomic Workstation](https://www.youtube.com/watch?v=Yc7lvkl5atE) [Slides](https://kalev.fedorapeople.org/slides/2018-devconf-Atomic-Workstation.pdf) 40 | 41 | Jonathan Lebon: [Fearless Upgrades with Fedora Atomic Workstation](https://www.youtube.com/watch?v=7c3GdfhWzcc) [Slides](http://jlebon.com/devconf/2018/slides.pdf) 42 | 43 | Colin Walters: [Hybrid image/package OS updates with rpm-ostree](https://www.youtube.com/watch?v=eWoFpOoA-tE) [Slides](https://fedorapeople.org/~walters/2018.01-devconf/index.html) 44 | 45 | Peter Robinson: [Using Fedora and OSTree for IoT](https://www.youtube.com/watch?v=mRqV38qT-wc) -------------------------------------------------------------------------------- /source/docs/cockpit.md: -------------------------------------------------------------------------------- 1 | Cockpit 2 | ======= 3 | **A remote manager for GNU/Linux servers** 4 | 5 | * Cockpit is a server manager that makes it easy to administer your GNU/Linux servers via a web browser. 6 | 7 | * Cockpit makes it easy for any sysadmin to perform simple tasks, such as administering storage, inspecting journals and starting and stopping services. 8 | 9 | * Jumping between the terminal and the web tool is no problem. A service started via Cockpit can be stopped via the terminal. Likewise, if an error occurs in the terminal, it can be seen in the Cockpit journal interface. 10 | 11 | * You can monitor and administer several servers at the same time. Just add them with a single click and your machines will look after its buddies. 12 | 13 | ## Cockpit and Docker 14 | 15 | Cockpit also makes it easy to monitor and administer Docker containers running on Cockpit-managed servers such as Project Atomic hosts. 16 | 17 | * Monitor resources consumed by containers 18 | * Adjust resources available to containers 19 | * Resource limits enforced by the CGroup subsystem in the Linux kernel 20 | * Adjust CPU shares 21 | * Assign memory limits 22 | * More CGroup policy controls to come 23 | * Stop, Start, Delete and Commit container instances 24 | * Run and Delete container images 25 | 26 | ## Starting and Using Cockpit 27 | 28 | 1. After starting your atomic host, you need to install and run the `cockpit` container: 29 | * `$ sudo atomic install cockpit/ws` 30 | * `$ sudo atomic run cockpit/ws` 31 | 2. You can now use the `cockpit` management interface at `http://yourhost:9090` 32 | 33 | For information on adding a systemd service file to ensure that the cockpit/ws container runs on system startup, see [this blog post](/blog/2015/06/running-cockpit-as-a-service/), and see [this post](/blog/2015/08/running-a-containerized-cockpit-ui-from-cloud-init/) to learn how to run cockpit via cloud-init. 34 | 35 | ## Learn More About Cockpit 36 | 37 | For more information, check out the [Cockpit documentation](http://cockpit-project.org/guide/latest/) at the [project site](http://cockpit-project.org/). 38 | -------------------------------------------------------------------------------- /source/docs/fedora-atomic-workstation.md: -------------------------------------------------------------------------------- 1 | HowTo: Fedora Atomic Workstation 2 | ================================ 3 | *Fedora Atomic Workstation* (FAW) is the desktop version of Fedora Atomic Host. It is still heavily in development with only few external users. This project is actively maintained and is ready for use by sophisticated and interested users, but not ready for widespread promotion. 4 | 5 | More detailed documentation with cheat sheet is coming on 15 February 2018. 6 | 7 | For a summary of the why and how, please read [Atomic Workstation](https://fedoraproject.org/wiki/Workstation/AtomicWorkstation) and [Workstation OSTree](https://fedoraproject.org/wiki/Changes/WorkstationOstree). 8 | 9 | ## Quickstart 10 | 11 | Download the [.iso](https://download.fedoraproject.org/pub/fedora/linux/releases/27/WorkstationOstree/x86_64/iso/) and use it to create installation media. 12 | 13 | For example, if you run the GNOME desktop, you can use the *Write to disk* capability of the Nautilus file browser to create an installation DVD. Alternatively, you can write the installation ISO image to a USB device with the `dd` command or by using the application `ISO Image Writer` which comes pre-installed with Fedora. With dd, if you had a USB thumbdrive mounted as `/dev/sdb`, you might use this command (be careful to get the drive location right): 14 | 15 | ``` 16 | dd if=yourisoname.iso of=/dev/sdb bs=4M 17 | ``` 18 | 19 | **Installing inside an existing system** 20 | 21 | If you rather want to install FAW inside an existing system, please follow the steps described on [Pagure](https://pagure.io/workstation-ostree-config/blob/master/f/README-install-inside.md). 22 | 23 | ## Support 24 | 25 | For now, you can ask us questions in the #atomic channel on IRC Freenode or via Twitter [@projectatomic](https://twitter.com/projectatomic). You can also use the [atomic-devel](https://lists.projectatomic.io/mailman/listinfo/atomic-devel) mailing list. Contributions are welcome. 26 | 27 | We are also in the process of creating a [Special Interest Group](https://fedoraproject.org/wiki/Workstation/AtomicWorkstation/SIG) - if you are interested in joining, let us know via one of the mentioned channels and we can add you. 28 | 29 | ## Updating and Reverting Fedora Atomic Workstation 30 | 31 | For information on how to update and rollback your system, please read [Operating System Upgrades via rpm-ostree](http://www.projectatomic.io/docs/os-updates/). 32 | -------------------------------------------------------------------------------- /source/docs/geard.md: -------------------------------------------------------------------------------- 1 | geard 2 | ===== 3 | 4 | **Project Atomic has switched to using [Kubernetes](http://kubernetes.io/) for container management** 5 | **The following should be considered deprecated and is left here for historical reference** 6 | 7 | geard is a command line client for installing [Docker](https://www.docker.io) images as containers onto a systemd-enabled Linux operating system (systemd 207 or newer). It may be run as a command: 8 | 9 | $ sudo gear install pmorie/sti-html-app my-sample-service 10 | 11 | to install the public image pmorie/sti-html-app to systemd on the local machine with the service name "ctr-my-sample-service". The command can also start as a daemon and serve API requests over HTTP (default port 43273) : 12 | 13 | $ sudo gear daemon 14 | 2014/02/21 02:59:42 ports: searching block 41, 4000-4099 15 | 2014/02/21 02:59:42 Starting HTTP on :43273 ... 16 | 17 | The `gear` CLI can connect to this agent: 18 | 19 | $ gear stop localhost/my-sample-service 20 | $ gear install pmorie/sti-html-app localhost/my-sample-service.1 localhost/my-sample-service.2 21 | $ gear start localhost/my-sample-service.1 localhost/my-sample-service.2 22 | 23 | The geard agent exposes operations on containers needed for [large scale orchestration](https://github.com/openshift/geard/blob/master/docs/orchestrating_geard.md) in production environments, and tries to map those operations closely to the underlying concepts in Docker and systemd. It supports linking containers into logical groups (applications) across multiple hosts with [iptables based local networking](https://github.com/openshift/geard/blob/master/docs/linking.md), shared environment files, and SSH access to containers. It is also a test bed for prototyping related container services that may eventually exist as Docker plugins, such as routing, event notification, and efficient idling and network activation. 24 | 25 | The gear daemon and local commands must run as root to interface with the Docker daemon over its Unix socket and systemd over DBus. 26 | 27 | ### To learn more about geard, visit https://openshift.github.io/geard. 28 | -------------------------------------------------------------------------------- /source/docs/man_pages.md: -------------------------------------------------------------------------------- 1 | ## Docker Man Pages 2 | 3 | * docker 4 | * docker-attach 5 | * docker-build 6 | * docker-images 7 | * docker-info 8 | * docker-rm 9 | * docker-rmi 10 | * docker-run 11 | * docker-tag 12 | 13 | 14 | ## rpm-ostree Man Pages 15 | -------------------------------------------------------------------------------- /source/download/cloud.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Installing Project Atomic in a Cloud 3 | --- 4 | # Into the Cloud 5 | 6 | Instructions about installing into most common cloud providers 7 | 8 | 9 | -------------------------------------------------------------------------------- /source/download/metal.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Installing Project Atomic on "bare metal" 3 | --- 4 | # Installing on your own hardware 5 | 6 | Instructions about installing into bare metal X86 PC. 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /source/download/virtualization.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Installing on a Virtual Machine 3 | --- 4 | # Installing Project Atomic on a Virtual Machine 5 | 6 | ## LibVirt 7 | 8 | The LibVirt library is used by virt-manager, oVirt and Red Hat 9 | Enterprise Virtualization, as well as Boxes application available 10 | on many Linux desktop distributions. We provide both ready-made appliance images. 11 | 12 | ## VmWare 13 | 14 | instructions for vmware 15 | 16 | ## Do It Yourself 17 | 18 | You can alternatively use the [installer ISO image](#installer-iso) if 19 | you want to customize the installation yourself. 20 | 21 | -------------------------------------------------------------------------------- /source/feed.xml.builder: -------------------------------------------------------------------------------- 1 | xml.instruct! 2 | xml.feed "xmlns" => "http://www.w3.org/2005/Atom" do 3 | site_url = data.site.domain[/http:/] ? data.site.domain : "http://#{data.site.domain}" 4 | xml.title data.site.name 5 | #xml.subtitle data.site.subtitle 6 | xml.subtitle defined?(tag_name) ? "Tag: #{tag_name.titleize}" : nil 7 | xml.id URI.join(site_url, blog.options.prefix.to_s) 8 | xml.link "href" => URI.join(site_url, blog.options.prefix.to_s) 9 | xml.link "href" => URI.join(site_url, current_page.path), "rel" => "self" 10 | xml.updated blog.articles.first ? blog.articles.first.date.to_time.iso8601 : "" 11 | xml.author { xml.name data.site.owner } 12 | 13 | # Optionally filter by tag 14 | relevant_articles = if defined? tag_name 15 | blog.articles.select do |a| 16 | tags = a.data.tags 17 | # Convert CSV string to an array, else use an array 18 | tags = tags.parse_csv.map{|s| s.strip} if tags.class == String 19 | tags && tags.detect {|t| t.downcase == tag_name.downcase} 20 | end 21 | else 22 | blog.articles 23 | end 24 | 25 | relevant_articles.reject! {|a| !a.published? } 26 | 27 | relevant_articles.take(blog_controller.options.per_page).each do |article| 28 | nickname = article.data.author 29 | 30 | xml.entry do 31 | xml.title article.title 32 | xml.link "rel" => "alternate", "href" => URI.join(site_url, article.url) 33 | xml.id URI.join(site_url, article.url) 34 | xml.published article.date.to_time.iso8601 35 | xml.updated File.mtime(article.source_file).iso8601 36 | xml.author {xml.name data.authors[nickname] ? data.authors[nickname].name : nickname} 37 | # xml.summary demote_headings(article.summary), "type" => "html" 38 | xml.content demote_headings(article.body), "type" => "html" 39 | end 40 | end 41 | end 42 | -------------------------------------------------------------------------------- /source/humans.txt: -------------------------------------------------------------------------------- 1 | # humanstxt.org/ 2 | # The humans responsible & technology colophon 3 | 4 | # TEAM 5 | 6 | -- -- 7 | 8 | # THANKS 9 | 10 | 11 | 12 | # TECHNOLOGY COLOPHON 13 | 14 | HTML5, CSS3 15 | jQuery, Modernizr 16 | -------------------------------------------------------------------------------- /source/images/2016-12-07_origin-install-output.txt.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/2016-12-07_origin-install-output.txt.gz -------------------------------------------------------------------------------- /source/images/2016-12-12-origin-install-part-2/logged_in.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/2016-12-12-origin-install-part-2/logged_in.jpeg -------------------------------------------------------------------------------- /source/images/2016-12-12-origin-install-part-2/logged_in_default.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/2016-12-12-origin-install-part-2/logged_in_default.jpeg -------------------------------------------------------------------------------- /source/images/2016-12-12-origin-install-part-2/logged_in_user_ruby_ex.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/2016-12-12-origin-install-part-2/logged_in_user_ruby_ex.jpeg -------------------------------------------------------------------------------- /source/images/2016-12-12-origin-install-part-2/login.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/2016-12-12-origin-install-part-2/login.jpeg -------------------------------------------------------------------------------- /source/images/2016-12-12-origin-install-part-2/registry_console_logged_in.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/2016-12-12-origin-install-part-2/registry_console_logged_in.jpeg -------------------------------------------------------------------------------- /source/images/2016-12-12-origin-install-part-2/registry_console_login.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/2016-12-12-origin-install-part-2/registry_console_login.jpeg -------------------------------------------------------------------------------- /source/images/2016-12-12-origin-install-part-2/ruby-ex-half.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/2016-12-12-origin-install-part-2/ruby-ex-half.jpeg -------------------------------------------------------------------------------- /source/images/2017-04-27_cloud-init-user-data.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/2017-04-27_cloud-init-user-data.png -------------------------------------------------------------------------------- /source/images/2017-04-27_droplet-created.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/2017-04-27_droplet-created.png -------------------------------------------------------------------------------- /source/images/2017-04-27_select-fedora-atomic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/2017-04-27_select-fedora-atomic.png -------------------------------------------------------------------------------- /source/images/2017-05-12-oo-standalone-registry/registry-console-logged-in.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/2017-05-12-oo-standalone-registry/registry-console-logged-in.png -------------------------------------------------------------------------------- /source/images/2017-05-12-oo-standalone-registry/registry-console-pushed-centos.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/2017-05-12-oo-standalone-registry/registry-console-pushed-centos.png -------------------------------------------------------------------------------- /source/images/2017-05-12-oo-standalone-registry/registry-console-pushed-fedora.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/2017-05-12-oo-standalone-registry/registry-console-pushed-fedora.png -------------------------------------------------------------------------------- /source/images/2017-05-12-oo-standalone-registry/registry-console-test-project.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/2017-05-12-oo-standalone-registry/registry-console-test-project.png -------------------------------------------------------------------------------- /source/images/2017-05-12-oo-standalone-registry/registry-console.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/2017-05-12-oo-standalone-registry/registry-console.png -------------------------------------------------------------------------------- /source/images/JSON.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/JSON.png -------------------------------------------------------------------------------- /source/images/adam.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/adam.jpg -------------------------------------------------------------------------------- /source/images/apple-touch-icon-114-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/apple-touch-icon-114-precomposed.png -------------------------------------------------------------------------------- /source/images/apple-touch-icon-144-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/apple-touch-icon-144-precomposed.png -------------------------------------------------------------------------------- /source/images/apple-touch-icon-57-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/apple-touch-icon-57-precomposed.png -------------------------------------------------------------------------------- /source/images/apple-touch-icon-72-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/apple-touch-icon-72-precomposed.png -------------------------------------------------------------------------------- /source/images/atomic-devmode-boot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/atomic-devmode-boot.png -------------------------------------------------------------------------------- /source/images/atomic-devmode-env.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/atomic-devmode-env.png -------------------------------------------------------------------------------- /source/images/atomic_top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/atomic_top.png -------------------------------------------------------------------------------- /source/images/atomicapp-logger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/atomicapp-logger.png -------------------------------------------------------------------------------- /source/images/banned-dm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/banned-dm.png -------------------------------------------------------------------------------- /source/images/bg-jumbotron.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/bg-jumbotron.png -------------------------------------------------------------------------------- /source/images/bind_mount_foobar_local_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/bind_mount_foobar_local_2.png -------------------------------------------------------------------------------- /source/images/bind_mount_foobar_lvm_7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/bind_mount_foobar_lvm_7.png -------------------------------------------------------------------------------- /source/images/boot_screen1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/boot_screen1.png -------------------------------------------------------------------------------- /source/images/buildah-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/buildah-logo.png -------------------------------------------------------------------------------- /source/images/centos-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/centos-logo.png -------------------------------------------------------------------------------- /source/images/cloud-init-cockpit-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/cloud-init-cockpit-1.png -------------------------------------------------------------------------------- /source/images/cloud-init-cockpit-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/cloud-init-cockpit-2.png -------------------------------------------------------------------------------- /source/images/cockpit-145/logs-abrt-details.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/cockpit-145/logs-abrt-details.png -------------------------------------------------------------------------------- /source/images/cockpit-145/logs-abrt-list.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/cockpit-145/logs-abrt-list.png -------------------------------------------------------------------------------- /source/images/cockpit-145/machines-delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/cockpit-145/machines-delete.png -------------------------------------------------------------------------------- /source/images/cockpit-145/terminal-full-window.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/cockpit-145/terminal-full-window.png -------------------------------------------------------------------------------- /source/images/cockpit-145/updates-restart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/cockpit-145/updates-restart.png -------------------------------------------------------------------------------- /source/images/cockpit-active-backup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/cockpit-active-backup.png -------------------------------------------------------------------------------- /source/images/cockpit-kubernetes-storage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/cockpit-kubernetes-storage.png -------------------------------------------------------------------------------- /source/images/cockpit-logical-volume-one-dialog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/cockpit-logical-volume-one-dialog.png -------------------------------------------------------------------------------- /source/images/cockpit-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/cockpit-logo.png -------------------------------------------------------------------------------- /source/images/cockpit-resource-sliders-text.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/cockpit-resource-sliders-text.png -------------------------------------------------------------------------------- /source/images/cockpit-storage-slider.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/cockpit-storage-slider.png -------------------------------------------------------------------------------- /source/images/cockpit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/cockpit.png -------------------------------------------------------------------------------- /source/images/community.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/community.png -------------------------------------------------------------------------------- /source/images/container-stack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/container-stack.png -------------------------------------------------------------------------------- /source/images/containercamp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/containercamp.png -------------------------------------------------------------------------------- /source/images/daemon_restart_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/daemon_restart_5.png -------------------------------------------------------------------------------- /source/images/dan-yawning.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/dan-yawning.jpg -------------------------------------------------------------------------------- /source/images/dangling.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/dangling.png -------------------------------------------------------------------------------- /source/images/doc-build-screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/doc-build-screenshot.png -------------------------------------------------------------------------------- /source/images/docker-brno-2016-09/jkarasek.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker-brno-2016-09/jkarasek.jpg -------------------------------------------------------------------------------- /source/images/docker-brno-2016-09/slide.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker-brno-2016-09/slide.jpg -------------------------------------------------------------------------------- /source/images/docker-brno-2016-09/tkral.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker-brno-2016-09/tkral.jpg -------------------------------------------------------------------------------- /source/images/docker-brno-2016-09/ttomecek.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker-brno-2016-09/ttomecek.jpg -------------------------------------------------------------------------------- /source/images/docker-brno-2016-09/vladim.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker-brno-2016-09/vladim.jpg -------------------------------------------------------------------------------- /source/images/docker-d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker-d.png -------------------------------------------------------------------------------- /source/images/docker-info-direct.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker-info-direct.png -------------------------------------------------------------------------------- /source/images/docker-info-loop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker-info-loop.png -------------------------------------------------------------------------------- /source/images/docker-info-overlay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker-info-overlay.png -------------------------------------------------------------------------------- /source/images/docker-selinux.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker-selinux.png -------------------------------------------------------------------------------- /source/images/docker_brno_20160615.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker_brno_20160615.pdf -------------------------------------------------------------------------------- /source/images/docker_container_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker_container_3.png -------------------------------------------------------------------------------- /source/images/docker_daemon_error.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker_daemon_error.png -------------------------------------------------------------------------------- /source/images/docker_daemon_format.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker_daemon_format.png -------------------------------------------------------------------------------- /source/images/docker_daemon_start.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker_daemon_start.png -------------------------------------------------------------------------------- /source/images/docker_help.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker_help.png -------------------------------------------------------------------------------- /source/images/docker_images_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker_images_2.png -------------------------------------------------------------------------------- /source/images/docker_info_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker_info_1.png -------------------------------------------------------------------------------- /source/images/docker_info_after_restart_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker_info_after_restart_6.png -------------------------------------------------------------------------------- /source/images/docker_inspect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker_inspect.png -------------------------------------------------------------------------------- /source/images/docker_inspect_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/docker_inspect_4.png -------------------------------------------------------------------------------- /source/images/documentation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/documentation.png -------------------------------------------------------------------------------- /source/images/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/favicon.ico -------------------------------------------------------------------------------- /source/images/favicon_base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/favicon_base.png -------------------------------------------------------------------------------- /source/images/fedora_container_new_base_size_8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/fedora_container_new_base_size_8.png -------------------------------------------------------------------------------- /source/images/fedora_pull.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/fedora_pull.png -------------------------------------------------------------------------------- /source/images/final_screen1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/final_screen1.png -------------------------------------------------------------------------------- /source/images/graph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/graph.png -------------------------------------------------------------------------------- /source/images/guestbook-ftw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/guestbook-ftw.png -------------------------------------------------------------------------------- /source/images/guestbook-go.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/guestbook-go.png -------------------------------------------------------------------------------- /source/images/hackfest-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/hackfest-1.jpg -------------------------------------------------------------------------------- /source/images/hackfest-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/hackfest-2.jpg -------------------------------------------------------------------------------- /source/images/hello_world.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/hello_world.png -------------------------------------------------------------------------------- /source/images/installation_summary1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/installation_summary1.png -------------------------------------------------------------------------------- /source/images/jiri.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/jiri.jpg -------------------------------------------------------------------------------- /source/images/lf-logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/lf-logo.jpg -------------------------------------------------------------------------------- /source/images/libvirtd-simple_cropped.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/libvirtd-simple_cropped.png -------------------------------------------------------------------------------- /source/images/libvirtd-wclient_cropped.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/libvirtd-wclient_cropped.png -------------------------------------------------------------------------------- /source/images/local_volume_foobar_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/local_volume_foobar_1.png -------------------------------------------------------------------------------- /source/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/logo.png -------------------------------------------------------------------------------- /source/images/lvm_volume_foobar_create_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/lvm_volume_foobar_create_3.png -------------------------------------------------------------------------------- /source/images/lvm_volume_inspect_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/lvm_volume_inspect_5.png -------------------------------------------------------------------------------- /source/images/lvm_volume_list_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/lvm_volume_list_4.png -------------------------------------------------------------------------------- /source/images/lvm_volume_rm_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/lvm_volume_rm_6.png -------------------------------------------------------------------------------- /source/images/new_docker_daemon_help.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/new_docker_daemon_help.png -------------------------------------------------------------------------------- /source/images/new_docker_help.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/new_docker_help.png -------------------------------------------------------------------------------- /source/images/new_fedora.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/new_fedora.png -------------------------------------------------------------------------------- /source/images/new_fedora_container_7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/new_fedora_container_7.png -------------------------------------------------------------------------------- /source/images/nulecule-diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/nulecule-diagram.png -------------------------------------------------------------------------------- /source/images/openstack-cloud-init-cockpit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/openstack-cloud-init-cockpit.png -------------------------------------------------------------------------------- /source/images/overdrive1000.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/overdrive1000.png -------------------------------------------------------------------------------- /source/images/ovirt-freeipa-docker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/ovirt-freeipa-docker.png -------------------------------------------------------------------------------- /source/images/parent-child.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/parent-child.png -------------------------------------------------------------------------------- /source/images/platforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/platforms.png -------------------------------------------------------------------------------- /source/images/portable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/portable.png -------------------------------------------------------------------------------- /source/images/registry-console.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/registry-console.png -------------------------------------------------------------------------------- /source/images/registry-image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/registry-image.png -------------------------------------------------------------------------------- /source/images/registry-images.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/registry-images.png -------------------------------------------------------------------------------- /source/images/registry-rbac.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/registry-rbac.png -------------------------------------------------------------------------------- /source/images/secure-containers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/secure-containers.png -------------------------------------------------------------------------------- /source/images/self-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/self-logo.png -------------------------------------------------------------------------------- /source/images/speedboat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/speedboat.png -------------------------------------------------------------------------------- /source/images/subatomic_cluster_new_case.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/subatomic_cluster_new_case.jpg -------------------------------------------------------------------------------- /source/images/subatomic_host_cockpit_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/subatomic_host_cockpit_1.png -------------------------------------------------------------------------------- /source/images/summit-booth-2016.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/summit-booth-2016.png -------------------------------------------------------------------------------- /source/images/vagrant-docker-dev-env.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/vagrant-docker-dev-env.png -------------------------------------------------------------------------------- /source/images/welcome_screen1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/welcome_screen1.png -------------------------------------------------------------------------------- /source/images/wordpress-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/images/wordpress-screen.png -------------------------------------------------------------------------------- /source/javascripts/_bootstrap-includes.js: -------------------------------------------------------------------------------- 1 | // Change /// to //= to enable an include 2 | 3 | //= require bootstrap/affix 4 | //= require bootstrap/alert 5 | //= require bootstrap/button 6 | //= require bootstrap/carousel 7 | //= require bootstrap/collapse 8 | //= require bootstrap/dropdown 9 | //= require bootstrap/tab 10 | //= require bootstrap/transition 11 | //= require bootstrap/scrollspy 12 | //= require bootstrap/modal 13 | //= require bootstrap/tooltip 14 | //= require bootstrap/popover 15 | -------------------------------------------------------------------------------- /source/javascripts/admin.js: -------------------------------------------------------------------------------- 1 | //= require jquery 2 | //= require _bootstrap-includes 3 | //= require_tree ./vendor 4 | -------------------------------------------------------------------------------- /source/javascripts/application.js: -------------------------------------------------------------------------------- 1 | //= require jquery 2 | //= require_tree ./vendor 3 | //= require_tree ./lib 4 | 5 | /* Turn off parts of bootstrap that you do not need in 6 | * _bootstrap-includes.js */ 7 | //= require _bootstrap-includes 8 | -------------------------------------------------------------------------------- /source/javascripts/lib/_copy_custom_libs_here.js: -------------------------------------------------------------------------------- 1 | // Place custom JS libraries in this directory 2 | -------------------------------------------------------------------------------- /source/javascripts/vendor/noconsole.js.coffee: -------------------------------------------------------------------------------- 1 | # Avoid `console` errors in browsers that lack a console. 2 | unless window.console and console.log 3 | (-> 4 | noop = -> 5 | 6 | methods = ["assert", "clear", "count", "debug", "dir", "dirxml", "error", "exception", "group", "groupCollapsed", "groupEnd", "info", "log", "markTimeline", "profile", "profileEnd", "markTimeline", "table", "time", "timeEnd", "timeStamp", "trace", "warn"] 7 | length = methods.length 8 | console = window.console = {} 9 | console[methods[length]] = noop while length-- 10 | )() 11 | -------------------------------------------------------------------------------- /source/layouts/_blog_pagination.haml: -------------------------------------------------------------------------------- 1 | :ruby 2 | # To use this partial, you must have `pageable: true` in your page's 3 | # frontmatter, and reference this partial like so, passing locals: 4 | # 5 | # = partial :blog_pagination, locals: locals 6 | 7 | 8 | - if defined? prev_page or defined? next_page 9 | 10 | - if num_pages > 1 11 | 12 | %ul.pagination 13 | 14 | - if prev_page 15 | %li 16 | - if prev_page 17 | =link_to "Newer", prev_page.url 18 | 19 | - (page_number - 4 .. page_number + 4).select{|i| i > 0 && i <= num_pages}.each do |i| 20 | 21 | - if i == page_number 22 | %li.active 23 | %span= i 24 | 25 | - else 26 | %li 27 | - p = nil 28 | - (i ... page_number).each do p = p ? p.metadata[:locals]['prev_page'] : prev_page; end 29 | - (page_number ... i).each do p = p ? p.metadata[:locals]['next_page'] : next_page; end 30 | =link_to "#{i}", (p && p.url) 31 | 32 | - if next_page 33 | %li 34 | =link_to "Older", next_page.url 35 | -------------------------------------------------------------------------------- /source/layouts/_blog_posts.haml: -------------------------------------------------------------------------------- 1 | :ruby 2 | # To use this partial, you must reference this partial like so, 3 | # passing locals: 4 | # 5 | # = partial :blog_posts, locals: locals 6 | 7 | summarize ||= summarize 8 | 9 | %section.articles 10 | 11 | - page_articles.reject {|a| !a.published? }.each do |article| 12 | = partial :blog_post, locals: {article: article, summarize: summarize} 13 | 14 | = partial :blog_pagination, locals: locals 15 | -------------------------------------------------------------------------------- /source/layouts/_eol.haml: -------------------------------------------------------------------------------- 1 |
2 |

Project Atomic is now sunset

3 |

4 | The Atomic Host platform is now replaced by CoreOS. 5 | Users of Atomic Host are encouraged to join the CoreOS community on the Fedora CoreOS communication channels. 6 |

7 |

8 | The documentation contained below and throughout this site has been retained for historical purposes, but can no longer be guaranteed to be accurate. 9 |

10 |
11 | -------------------------------------------------------------------------------- /source/layouts/_footer.haml: -------------------------------------------------------------------------------- 1 | .row 2 | .col-md-offset-3.col-md-9.col-lg-offset-2.col-lg-10#footer 3 | %footer 4 | 5 | %hr.visible-print 6 | 7 | - if data.site.footer_links 8 | %ul.footer-nav-list 9 | - data.site.footer_links.each do |name, url| 10 | %li= link_to name.strip, url.strip, target: "_blank" 11 | 12 | =# data.site.founding_year 13 | - founding = data.site.founding_year 14 | - year_string = if founding && founding.to_i < Time.now.year 15 | - founding.to_s + '–' + Time.now.year.to_s 16 | - else 17 | - Time.now.year.to_s 18 | 19 | = data.site.copyright || "© #{year_string} #{data.site.owner || data.site.name}" 20 | 21 | - if data.site.github && !current_page.path.match(/blog/) 22 | .edit-this-page.pull-right 23 | - icon = '' 24 | - source_file = current_page.source_file.sub(root, '') 25 | - github_url = "https://github.com/#{data.site.github}/edit/master#{source_file}" 26 | = link_to "#{icon}Edit this page on GitHub", github_url 27 | 28 | ~ insert_piwik_tracker 29 | -# .last-modified 30 | - modified_time = IO.popen(['git', 'log', '--pretty=format:%ai', current_page.source_file]).read.split(/\n/).first rescue nil 31 | 32 | - if modified_time 33 | Page last modified 34 | = Time.parse(modified_time).utc.strftime('%a %-d %b %Y %H:%M %Z') 35 | 36 | -------------------------------------------------------------------------------- /source/layouts/_header.haml: -------------------------------------------------------------------------------- 1 | #nav-primary 2 | = partial :navbar, locals: { brand: data.site.name } 3 | -------------------------------------------------------------------------------- /source/layouts/_navbar_static_top.haml: -------------------------------------------------------------------------------- 1 | -# This is a plain, static bootstrap navbar written in haml. 2 | -# By default it is inverted and goes on the top of the page. 3 | .navbar.navbar-inverse.navbar-static-top 4 | .container 5 | .navbar-header 6 | %button.navbar-toggle( type="button" data-toggle="collapse" data-target=".navbar-collapse" ) 7 | %span.icon-bar 8 | %span.icon-bar 9 | %span.icon-bar 10 | %a.navbar-brand( href="/" title="Home" ) Home 11 | .navbar-collapse.collapse 12 | %ul.nav.navbar-nav 13 | %li 14 | %a( href="/blog/" ) Blog 15 | %li 16 | %a( href="/documentation/" ) Documentation 17 | %li.dropdown 18 | %a.dropdown-toggle( href="#help" title="help" data-toggle="dropdown" ) 19 | Help 20 | %b.caret 21 | %ul.dropdown-menu 22 | %li 23 | %a( href="http://middlemanapp.com/" ) Middleman 24 | %li 25 | %a( href="http://getbootstrap.com" ) Bootstrap 26 | %li 27 | %a( href="http://haml.info/" ) Haml 28 | 29 | -------------------------------------------------------------------------------- /source/layouts/_social.haml: -------------------------------------------------------------------------------- 1 | %ul#social.list-unstyled 2 | %li.twitter 3 | %a{:href => "http://www.twitter.com/projectatomic", :title => "Twitter" } 4 | %i.fa.fa-twitter 5 | %span.label Twitter 6 | %li.facebook 7 | %a{:href => "https://www.facebook.com/projectatomic", :title => "Facebook" } 8 | %i.fa.fa-facebook 9 | %span.label Facebook 10 | %li.google 11 | %a{:href => "https://plus.google.com/108727025270662383247/posts", :title => "Google+" } 12 | %i.fa.fa-google-plus 13 | %span.label Google+ 14 | %li.rss 15 | %a{:href => "/blog/feed.xml", :title => "RSS" } 16 | %i.fa.fa-rss 17 | %span.label RSS 18 | -------------------------------------------------------------------------------- /source/layouts/_social_share.haml: -------------------------------------------------------------------------------- 1 | - share_url = URI.encode("http://#{data.site.domain}#{article.url}") 2 | 3 | %p 4 | %small Share this post: 5 | %span#social_share.btn-group 6 | %a.btn.btn-default.btn-xs{:href => "http://twitter.com/share?text=yourtext&url=#{share_url}", 7 | :title => "Twitter", :role => "button" } 8 | %i.fa.fa-twitter 9 | Twitter 10 | %a.btn.btn-default.btn-xs{:href => "http://www.facebook.com/sharer.php?u=#{share_url}", 11 | :title => "Facebook", :role => "button" } 12 | %i.fa.fa-facebook 13 | Facebook 14 | %a.btn.btn-default.btn-xs{:href => "https://plus.google.com/share?url=#{share_url}", 15 | :title => "Google", :role => "button" } 16 | %i.fa.fa-google-plus 17 | Google+ 18 | -------------------------------------------------------------------------------- /source/layouts/admin.html.haml: -------------------------------------------------------------------------------- 1 | ~ wrap_layout :basic do 2 | 3 | - content_for :head do 4 | = javascript_include_tag 'application' 5 | = javascript_include_tag 'admin' 6 | = stylesheet_link_tag "application" 7 | = stylesheet_link_tag "print", media: "print" 8 | = stylesheet_link_tag "lib/admin" 9 | = stylesheet_link_tag "vendor/lepture-editor.css" 10 | 11 | = yield 12 | -------------------------------------------------------------------------------- /source/layouts/basic.html.haml: -------------------------------------------------------------------------------- 1 | !!!5 2 | /[if lt IE 7] 3 | /[if IE 7] 4 | /[if IE 8] 5 | /[if IE 9] 6 | /[if lt IE 10] 7 | /[if !IE]> 8 | %html.no-js(lang="en") 9 | / (current_page.data.page_classes || '') + " " + page_classes + " source-#{current_page.source_file.split('.').last}" } 47 | 48 | = yield 49 | 50 | = javascript_include_tag 'application' 51 | 52 | = yield_content :tail 53 | 54 | - if build? 55 | 56 | -# Place JS in javascripts/production and it'll show up only for production 57 | -#= javascript_include_tag 'production' 58 | 59 | = partial 'production_only' rescue '' 60 | -------------------------------------------------------------------------------- /source/layouts/docs.html.haml: -------------------------------------------------------------------------------- 1 | ~ wrap_layout :layout do 2 | .row 3 | 4 | .col-sm-9 5 | 6 | -# %h2= current_page.data.title 7 | 8 | = yield 9 | 10 | .col-sm-3.hidden-print 11 | 12 | %h3 Documentation Index 13 | 14 | = partial "nav", locals: { source: "docs", nav_class: "nav-vertical docbrowser", header: "h2.foo" } 15 | -------------------------------------------------------------------------------- /source/layouts/layout.html.haml: -------------------------------------------------------------------------------- 1 | ~ wrap_layout :basic do 2 | 3 | %section#page-wrap.container 4 | 5 | .row 6 | 7 | #sidebar.col-md-3.col-lg-2 8 | - unless data.page.hide_header || request['params']['contentonly'] 9 | = partial "header" 10 | 11 | %section#content.col-md-9.col-lg-10{class: data.page.no_container.nil? ? 'container' : '' } 12 | 13 | -# Show a warning for those using < IE6 or lower 14 | /[if lt IE 7] 15 |

You are using an outdated browser. 16 | Upgrade your browser today or 17 | install Google Chrome Frame to better experience this site.

18 | 19 | -# Render actual page content 20 | = yield 21 | 22 | - unless data.page.hide_footer || request['params']['contentonly'] 23 | = partial "footer" 24 | -------------------------------------------------------------------------------- /source/layouts/page.html.haml: -------------------------------------------------------------------------------- 1 | layout.html.haml -------------------------------------------------------------------------------- /source/layouts/post.html.haml: -------------------------------------------------------------------------------- 1 | ~ wrap_layout :layout do 2 | 3 | %section.blog-post-page.row 4 | 5 | .col-md-12 6 | 7 | - blog_post = defined? current_page.date 8 | 9 | - if blog_post 10 | = partial :blog_post, locals: {article: current_page} 11 | 12 | %section#blog-comments 13 | 14 | - else 15 | = yield 16 | -------------------------------------------------------------------------------- /source/releases/index.html.haml: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Project Atomic Releases" 3 | --- 4 | .jumbotron 5 | %h1 6 | Project Atomic Releases 7 | 8 | .row 9 | .col-xs-12.col-lg-4 10 | %h2 11 | %i.fa.fa-cloud-download 12 | CentOS Atomic Host 13 | %p 14 | The CentOS Atomic Host is a rebuild of the Red Hat Enterprise Linux (RHEL) Atomic Host sources. 15 | %p 16 | CentOS Atomic Host images are in formats suitable for public and private clouds, an ISO for bare metal installation, and Vagrant boxes for libvirt/KVM and VirtualBox. 17 | %p 18 | #{link_to "Download CentOS Atomic Host", "http://buildlogs.centos.org/centos/7/atomic-host/x86_64/images/"} 19 | .col-xs-12.col-lg-4 20 | %h2 21 | %i.fa.fa-cloud-download 22 | Fedora 22 Atomic Host 23 | %p 24 | The Fedora 22 release of Atomic Host provides a solid host for running Docker containers. Released in May 2015, Fedora 22 Atomic Host will be supported through June 2016. 25 | %p 26 | This includes ISO images for bare metal installation, images suitable for OpenStack and other public/private cloud environments, Vagrant boxes, and Amazon EC2 AMIs. 27 | %p 28 | #{link_to "Download Fedora 22 Atomic Host", "https://getfedora.org/en/cloud/download/"} 29 | .col-xs-12.col-lg-4 30 | %h2 31 | %i.fa.fa-cloud-download 32 | Fedora Nightlies 33 | %p 34 | Want to see the latest work that's going on for Project Atomic? Check out the nightly builds! Note that these are only suitable for development and testing, we strongly recommend you do not attempt to use with important data or mission critical work. 35 | %p 36 | Currently the Fedora Nightlies are released as ISO images only, but additional formats will be available soon. 37 | %p 38 | #{link_to "Download Fedora Nightlies", "http://atomic-nightly.cloud.fedoraproject.org/composes/"} 39 | -------------------------------------------------------------------------------- /source/robots.txt: -------------------------------------------------------------------------------- 1 | # robotstxt.org/ 2 | 3 | User-agent: * 4 | Disallow: 5 | 6 | -------------------------------------------------------------------------------- /source/stylesheets/404.css.sass: -------------------------------------------------------------------------------- 1 | ::-moz-selection, ::selection 2 | background: #b3d4fc 3 | text-shadow: none 4 | 5 | html 6 | padding: 30px 10px 7 | font-size: 20px 8 | line-height: 1.4 9 | color: #737373 10 | background: #f0f0f0 11 | -webkit-text-size-adjust: 100% 12 | -ms-text-size-adjust: 100% 13 | font-family: "Helvetica Neue", Helvetica, Arial, sans-serif 14 | 15 | input 16 | font-family: "Helvetica Neue", Helvetica, Arial, sans-serif 17 | 18 | body 19 | max-width: 500px 20 | _width: 500px 21 | padding: 30px 20px 50px 22 | border: 1px solid #b3b3b3 23 | border-radius: 4px 24 | margin: 0 auto 25 | box-shadow: 0 1px 10px #a7a7a7, inset 0 1px 0 #fff 26 | background: #fcfcfc 27 | 28 | /* google search 29 | 30 | #goog-fixurl 31 | ul 32 | list-style: none 33 | padding: 0 34 | margin: 0 35 | form 36 | margin: 0 37 | 38 | #goog-wm-qt, #goog-wm-sb 39 | border: 1px solid #bbb 40 | font-size: 16px 41 | line-height: normal 42 | vertical-align: top 43 | color: #444 44 | border-radius: 2px 45 | 46 | #goog-wm-qt 47 | width: 220px 48 | //height: 20px 49 | padding: 5px 50 | margin: 5px 10px 0 0 51 | box-shadow: inset 0 1px 1px #ccc 52 | 53 | #goog-wm-sb 54 | display: inline-block 55 | height: 32px 56 | padding: 0 10px 57 | margin: 5px 0 0 58 | white-space: nowrap 59 | cursor: pointer 60 | background-color: #f5f5f5 61 | background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), #f1f1f1) 62 | background-image: -moz-linear-gradient(rgba(255, 255, 255, 0), #f1f1f1) 63 | background-image: -ms-linear-gradient(rgba(255, 255, 255, 0), #f1f1f1) 64 | background-image: -o-linear-gradient(rgba(255, 255, 255, 0), #f1f1f1) 65 | -webkit-appearance: none 66 | -moz-appearance: none 67 | appearance: none 68 | *overflow: visible 69 | *display: inline 70 | *zoom: 1 71 | &:hover, &:focus 72 | border-color: #aaa 73 | box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1) 74 | background-color: #f8f8f8 75 | 76 | #goog-wm-qt 77 | &:hover, &:focus 78 | border-color: #105cb6 79 | outline: 0 80 | color: #222 81 | 82 | input::-moz-focus-inner 83 | padding: 0 84 | border: 0 85 | -------------------------------------------------------------------------------- /source/stylesheets/_bootstrap-includes.sass: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap v3.0.0 3 | * 4 | * Copyright 2013 Twitter, Inc 5 | * Licensed under the Apache License v2.0 6 | * http://www.apache.org/licenses/LICENSE-2.0 7 | * 8 | * Designed and built with all the love in the world by @mdo and @fat. 9 | 10 | // Core variables and mixins 11 | @import bootstrap/variables 12 | @import bootstrap/mixins 13 | 14 | // Reset 15 | @import bootstrap/normalize 16 | //@import bootstrap/print 17 | 18 | // Core CSS 19 | @import bootstrap/scaffolding 20 | @import bootstrap/type 21 | @import bootstrap/code 22 | @import bootstrap/grid 23 | @import bootstrap/tables 24 | @import bootstrap/forms 25 | @import bootstrap/buttons 26 | 27 | // Components 28 | //@import bootstrap/component-animations 29 | //@import bootstrap/glyphicons 30 | //@import bootstrap/dropdowns 31 | @import bootstrap/button-groups 32 | @import bootstrap/input-groups 33 | @import bootstrap/navs 34 | @import bootstrap/navbar 35 | //@import bootstrap/breadcrumbs 36 | @import bootstrap/pagination 37 | //@import bootstrap/pager 38 | //@import bootstrap/labels 39 | //@import bootstrap/badges 40 | //@import bootstrap/jumbotron 41 | //@import bootstrap/thumbnails 42 | @import bootstrap/alerts 43 | //@import bootstrap/progress-bars 44 | //@import bootstrap/media 45 | //@import bootstrap/list-group 46 | //@import bootstrap/panels 47 | //@import bootstrap/wells 48 | @import bootstrap/close 49 | 50 | // Components w/ JavaScript 51 | @import bootstrap/modals 52 | @import bootstrap/tooltip 53 | //@import bootstrap/popovers 54 | //@import bootstrap/carousel 55 | 56 | // Utility classes 57 | @import bootstrap/utilities 58 | @import bootstrap/responsive-utilities 59 | -------------------------------------------------------------------------------- /source/stylesheets/_fonts.css: -------------------------------------------------------------------------------- 1 | @import url(fonts/fonts.css); 2 | -------------------------------------------------------------------------------- /source/stylesheets/application.css.sass: -------------------------------------------------------------------------------- 1 | // Various variables to customize bootstrap 2 | // Uncomment a line and change its value to change the look of your site 3 | @import bootstrap-custom 4 | @import bootstrap 5 | 6 | // You can uncomment parts of bootstrap that you don't use 7 | // in _bootstrap-includes.sass, generated from: 8 | // sass-convert -F scss -T sass {bootstrap-sass}/vendor/assets/stylesheets/bootstrap/bootstrap.scss 9 | @import bootstrap-includes 10 | 11 | // Custom mixins 12 | @import lib/mixin/grayscale.sass 13 | @import lib/mixin/responsive-image.sass 14 | 15 | //@import vendor/normalize.css 16 | @import fonts/fonts.css 17 | @import vendor/solarized-light.sass 18 | 19 | @import lib/scrollbar-on.sass 20 | 21 | @import lib/site.sass 22 | @import lib/markdown.sass 23 | @import lib/blog.sass 24 | @import lib/search.sass 25 | 26 | //@import lib/stickyfooter.sass 27 | //@import lib/svg-fallback.sass 28 | 29 | @import lib/docbrowser.sass 30 | 31 | @import font-awesome 32 | 33 | @import application-custom 34 | -------------------------------------------------------------------------------- /source/stylesheets/fonts/LeagueGothic-Regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/stylesheets/fonts/LeagueGothic-Regular.eot -------------------------------------------------------------------------------- /source/stylesheets/fonts/LeagueGothic-Regular.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/stylesheets/fonts/LeagueGothic-Regular.svg -------------------------------------------------------------------------------- /source/stylesheets/fonts/LeagueGothic-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/stylesheets/fonts/LeagueGothic-Regular.ttf -------------------------------------------------------------------------------- /source/stylesheets/fonts/LeagueGothic-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/atomic-site/6aeb04b9bfa6081a4808866f48d727838ec7c639/source/stylesheets/fonts/LeagueGothic-Regular.woff -------------------------------------------------------------------------------- /source/stylesheets/fonts/fonts.css: -------------------------------------------------------------------------------- 1 | @import url(//fonts.googleapis.com/css?family=Open+Sans:400,300,600,700,800|Source+Code+Pro:400,600); 2 | 3 | /* Place your font info and files here */ 4 | 5 | /** Generated by FG **/ 6 | @font-face { 7 | font-family: 'League Gothic Webfont'; 8 | font-style: normal; 9 | font-weight: normal; 10 | src: url('LeagueGothic-Regular.eot'); 11 | src: local('☺'), url('LeagueGothic-Regular.woff') format('woff'), url('LeagueGothic-Regular.ttf') format('truetype'), url('LeagueGothic-Regular.svg') format('svg'); 12 | } 13 | 14 | -------------------------------------------------------------------------------- /source/stylesheets/lib/blog.css.sass: -------------------------------------------------------------------------------- 1 | @import ../bootstrap-custom 2 | 3 | // blog post metadata (dates etc) styling 4 | .blog 5 | .post_info 6 | font-size: 80% 7 | color: rgba(black, 0.4) 8 | -------------------------------------------------------------------------------- /source/stylesheets/lib/blog.sass: -------------------------------------------------------------------------------- 1 | @import ../_bootstrap-custom.sass 2 | 3 | /* Hide archive title 4 | 5 | body.archive 6 | 7 | &.category-blog, 8 | &.category-1 9 | 10 | .page-header 11 | display: none 12 | 13 | #content 14 | padding-top: 2em 15 | 16 | .entry-title 17 | a 18 | color: inherit 19 | 20 | &:hover 21 | text-decoration: underline 22 | 23 | /* Make titles the header color & underline on hover 24 | 25 | /* Make comments come from avatars 26 | 27 | .commentlist 28 | .avatar 29 | left: -98px 30 | right: auto 31 | top: 0 32 | > li.comment 33 | margin-left: 98px 34 | .comment-meta, .comment-content 35 | margin-right: auto 36 | 37 | /** Article 38 | 39 | .singular .hentry, .hentry 40 | padding: 0 41 | 42 | .singular .entry-header .entry-meta, .entry-header .entry-meta 43 | position: static 44 | 45 | article.post 46 | h2:first-child 47 | padding-top: 2em 48 | 49 | a 50 | display: block 51 | 52 | &:first-child 53 | margin-top: -3em 54 | 55 | .articles > .pagination 56 | margin: 3em 0 0 57 | 58 | .post-meta 59 | color: #777 60 | 61 | /* FIXME: display tags in a nice way 62 | /* (For now, we'll just temporarily hide them.) 63 | .tags 64 | display: none 65 | 66 | .author-info 67 | @extend .row 68 | 69 | a 70 | @extend .col-md-12 71 | 72 | .author-photo 73 | @extend .col-md-2 74 | vertical-align: middle 75 | text-align: right 76 | 77 | img 78 | border-radius: 48px 79 | 80 | .author-blurb.with-photo 81 | @extend .col-md-10 82 | 83 | .post-content 84 | margin-top: 2em 85 | 86 | p 87 | > img:first-child, 88 | > a[href*=flickr] img 89 | max-width: 100% 90 | height: auto 91 | display: block 92 | text-align: center 93 | margin: 1em auto 94 | 95 | > p:first-child 96 | 97 | > a > img:first-child, 98 | > img:first-child 99 | float: left 100 | margin: 0 3ex 1ex 0 101 | 102 | ul 103 | margin: 10px 104 | 105 | li > p 106 | margin: 0 107 | 108 | #blog-comments 109 | border-top: 1px solid #ccc 110 | margin: 4em 0 0 111 | padding: 3em 0 3em 112 | 113 | .tag-cloud 114 | line-height: 3em 115 | text-align: justify 116 | 117 | .tag 118 | padding-right: 1ex 119 | 120 | a 121 | vertical-align: middle 122 | -------------------------------------------------------------------------------- /source/stylesheets/lib/docbrowser.sass: -------------------------------------------------------------------------------- 1 | @import ../bootstrap-custom 2 | 3 | .nav.docbrowser 4 | border-radius: 6px 5 | overflow: hidden 6 | 7 | li 8 | $nav-padding-x: 20px 9 | $nav-padding-y: 3px 10 | $selected-bar: 8px 11 | padding-right: 1ex 12 | 13 | a 14 | padding: $nav-padding-y $nav-padding-x 15 | 16 | &:hover 17 | text-decoration: underline 18 | background: transparent 19 | 20 | &.active 21 | a 22 | @import compass 23 | background-color: rgba(adjust-saturation($brand-primary, -50), 0.1) 24 | padding-left: $nav-padding-x - $selected-bar 25 | border-left: $selected-bar solid rgba(adjust-saturation($brand-primary, -20), 0.7) 26 | +border-radius(3px) 27 | 28 | &.disabled 29 | font-size: 12pt 30 | 31 | a 32 | cursor: default !important 33 | 34 | &:not(:first-child) 35 | padding-top: 1em 36 | -------------------------------------------------------------------------------- /source/stylesheets/lib/markdown.sass: -------------------------------------------------------------------------------- 1 | @import ../bootstrap-custom 2 | 3 | // Special stylings for markdown 4 | .source-md, 5 | .source-markdown, 6 | .source-mdown 7 | 8 | // Pull in Bootstrap's table SASS and apply it to markdown files 9 | table 10 | @extend .table 11 | @extend .table-bordered 12 | @extend .table-striped 13 | //@extend .table-responsive 14 | -------------------------------------------------------------------------------- /source/stylesheets/lib/mixin/grayscale.sass: -------------------------------------------------------------------------------- 1 | %grayscale 2 | filter: url("data:image/svg+xml;utf8,#grayscale") // Firefox 10+, Firefox on Android 3 | filter: gray // IE6-9 4 | -webkit-filter: grayscale(100%) // Chrome 19+, Safari 6+, Safari 6+ iOS 5 | 6 | %greyscale 7 | @extend %grayscale 8 | -------------------------------------------------------------------------------- /source/stylesheets/lib/mixin/responsive-image.sass: -------------------------------------------------------------------------------- 1 | %responsive-image 2 | max-width: 100% 3 | height: auto 4 | -------------------------------------------------------------------------------- /source/stylesheets/lib/scrollbar-on.sass: -------------------------------------------------------------------------------- 1 | /* Always show the vertical scrollbar, reducing jumps between pages 2 | html 3 | overflow-y: scroll 4 | -------------------------------------------------------------------------------- /source/stylesheets/lib/search.sass: -------------------------------------------------------------------------------- 1 | .search-page 2 | 3 | .search-form 4 | //@extend .row 5 | 6 | .search-input 7 | //@extend .col-md-10 8 | 9 | .similar 10 | padding: 1ex 0 2ex 11 | color: #999 12 | 13 | .progress-container 14 | position: absolute 15 | left: 0 16 | right: 0 17 | text-align: center 18 | 19 | .spinner 20 | font-size: 6em 21 | margin: 1em auto 22 | color: rgba(black, 0.25) 23 | 24 | .articles 25 | margin: 0 26 | 27 | article.post 28 | padding: 1em 1em 1em 29 | margin: 0 -1em 30 | 31 | &.highlight 32 | background: rgba(yellow, 0.125) 33 | outline: 1px solid rgba(orange, 0.25) 34 | border-radius: 6px 35 | 36 | h2 37 | @extend h3 38 | padding: 0 39 | margin: 0 40 | 41 | .date 42 | padding: 0 0 0.5ex 43 | 44 | .post-content 45 | margin: 0 46 | 47 | .hidden 48 | display: none 49 | 50 | #results-none 51 | text-align: center 52 | padding: 2em 0 53 | -------------------------------------------------------------------------------- /source/stylesheets/lib/site.sass: -------------------------------------------------------------------------------- 1 | header.masthead 2 | text-align: center 3 | 4 | nav 5 | max-width: 50% 6 | margin: 0 auto 7 | 8 | body > footer 9 | padding: 1rem 1rem 2rem 10 | -------------------------------------------------------------------------------- /source/stylesheets/lib/stickyfooter.sass: -------------------------------------------------------------------------------- 1 | body 2 | display: flex 3 | min-height: 100vh 4 | flex-direction: column 5 | 6 | #page-wrap 7 | flex: 1 8 | -------------------------------------------------------------------------------- /source/stylesheets/lib/svg-fallback.sass: -------------------------------------------------------------------------------- 1 | html.svg .not-svg, 2 | html.no-svg .is-svg 3 | display: none 4 | -------------------------------------------------------------------------------- /source/stylesheets/print.css.sass: -------------------------------------------------------------------------------- 1 | @import bootstrap-custom 2 | 3 | @import bootstrap/mixins 4 | @import bootstrap/variables 5 | @import bootstrap/normalize 6 | 7 | @import bootstrap/print 8 | @import bootstrap/responsive-utilities 9 | -------------------------------------------------------------------------------- /source/tag.html.haml: -------------------------------------------------------------------------------- 1 | --- 2 | pageable: true 3 | per_page: 12 4 | --- 5 | 6 | - content_for :head do 7 | %link(href="/blog/feed.xml" rel="alternate" title="Atom feed" type="application/atom+xml") 8 | 9 | - if defined? tagname 10 | %link(href="/blog/tag/#{tagname.downcase}.xml" rel="alternate" title="Atom feed" type="application/atom+xml") 11 | 12 | 13 | - if defined? tagname 14 | 15 | %h2 16 | Articles tagged '#{tagname}' 17 | 18 | - if paginate && num_pages > 1 19 | 20 | %p 21 | Page #{page_number} of #{num_pages} 22 | - if prev_page 23 | %p= link_to 'Previous page', prev_page 24 | 25 | %ul 26 | - page_articles.each_with_index do |article, i| 27 | 28 | %li 29 | = link_to article.title, article 30 | %span= article.date.strftime('%b %e') 31 | 32 | - if paginate 33 | - if next_page 34 | %p= link_to 'Next page', next_page 35 | 36 | - else 37 | 38 | :ruby 39 | def tag_size count, min, max 40 | min_percent, max_percent = 100, 300 41 | 42 | size = min_percent + (count - min) * ((max_percent - min_percent) / [(max - min), 1].max) 43 | 44 | "font-size:#{size}%;" 45 | end 46 | 47 | - if blog.tags.count > 0 48 | 49 | %h2 All tags 50 | 51 | - min_size = blog.tags.min_by {|t| t[1].count}[1].count 52 | - max_size = blog.tags.max_by {|t| t[1].count}[1].count 53 | 54 | .tag-cloud 55 | - blog.tags.sort_by {|tag_name, d| tag_name.downcase}.each do |tag_name, tag_data| 56 | %span.tag= link_to tag_name, "/blog/tag/#{tag_name.parameterize.downcase}/", style: tag_size(tag_data.count, min_size, max_size) 57 | 58 | - else 59 | 60 | %h2 No tags found 61 | -------------------------------------------------------------------------------- /test-pull.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | """ 4 | This script automates creating a new branch, merging in a numbered pull 5 | request, and starting up the atomic-site in a container so that you can 6 | check the content. Needs to be run from the atomic-site repo homedir. 7 | Expects Nulecule etc. to be already set up. 8 | """ 9 | 10 | import github3 11 | import sys 12 | from subprocess import check_call 13 | 14 | if len(sys.argv) < 2: 15 | print ("usage: test-pull.py #PRNUM") 16 | sys.exit(-1) 17 | else: 18 | prnum = sys.argv[1] 19 | 20 | # connect anonymously 21 | gh = github3.GitHub() 22 | rep = gh.repository('projectatomic','atomic-site') 23 | # pull the pull request using the user-supplied number 24 | pr = rep.pull_request(prnum) 25 | prsrc = pr.head 26 | # if it's a local pull request, name is branch ... 27 | if prsrc.repo[0] == u'projectatomic': 28 | prname = prsrc.ref 29 | else: 30 | #otherwise it's user + branchpip install github3.py 31 | prname = '{}-{}'.format(prsrc.repo[0],prsrc.ref) 32 | 33 | prfrom = 'git://github.com/{}/{}/{}'.format(prsrc.repo[0], prsrc.repo[1], prsrc.ref) 34 | 35 | # make sure we're up to date 36 | check_call(["git", "checkout", "master"]) 37 | check_call(["git", "pull", "origin", "master"]) 38 | # create a branch for the new pr, and pull to it 39 | check_call(["git", "checkout", "-b", prname, "master"]) 40 | check_call(["git", "pull", prfrom, prsrc.ref]) 41 | 42 | # launch the container using docker 43 | check_call(["sudo", "./docker.sh"]) 44 | --------------------------------------------------------------------------------