{"id":19398891,"url":"https://github.com/pschiffe/pcs","last_synced_at":"2025-11-18T02:03:16.292Z","repository":{"id":80759481,"uuid":"48181143","full_name":"pschiffe/pcs","owner":"pschiffe","description":"pcs docker image with pacemaker and corosync","archived":false,"fork":false,"pushed_at":"2025-05-04T16:54:06.000Z","size":20,"stargazers_count":11,"open_issues_count":0,"forks_count":6,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-05T02:55:37.909Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://hub.docker.com/r/pschiffe/pcs","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pschiffe.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-12-17T15:08:13.000Z","updated_at":"2025-05-04T16:54:05.000Z","dependencies_parsed_at":"2024-11-01T14:28:19.360Z","dependency_job_id":"de84279b-c455-40e5-a83e-b1e923d22d2b","html_url":"https://github.com/pschiffe/pcs","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pschiffe/pcs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pschiffe%2Fpcs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pschiffe%2Fpcs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pschiffe%2Fpcs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pschiffe%2Fpcs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pschiffe","download_url":"https://codeload.github.com/pschiffe/pcs/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pschiffe%2Fpcs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":284988465,"owners_count":27095952,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-11-18T02:00:05.759Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-10T11:07:35.439Z","updated_at":"2025-11-18T02:03:16.271Z","avatar_url":"https://github.com/pschiffe.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# pcs\n\n![Docker Image Size (tag)](https://img.shields.io/docker/image-size/pschiffe/pcs/latest?label=latest) ![Docker Pulls](https://img.shields.io/docker/pulls/pschiffe/pcs)\n\nThis is a [Docker](https://www.docker.com/) image that includes [Pacemaker](http://clusterlabs.org/) and [Corosync](https://corosync.github.io/corosync/), both managed by [pcs](https://github.com/feist/pcs).\n\nTo get this image, pull it from [docker hub](https://hub.docker.com/r/pschiffe/pcs/):\n```\ndocker pull pschiffe/pcs\n```\n\nIf you want to build this image yourself, clone the [GitHub repository](https://github.com/pschiffe/pcs) and run the following command in the directory containing the Dockerfile:\n```\ndocker build -t pcs .\n```\n\nTo run the image:\n```\ndocker run -dt --privileged --net=host -v /etc/localtime:/etc/localtime:ro -v /run/docker.sock:/var/docker.sock:ro -v /usr/bin/docker:/usr/bin/docker:ro --name pcs pschiffe/pcs\n```\n\nThe Pacemaker in this image can manage Docker containers on the host. This is why the Docker socket and binary are exposed to the image (do not expose these if not necessary). Privileged mode is required by the systemd in the container and `--net=host` is required so the pacemaker is able to manage virtual IP.\n\nThe pcs web UI will be available at https://localhost:2224/. To log in, you need to set a password for the `hacluster` Linux user inside the image:\n```\ndocker exec -it pcs bash\npasswd hacluster\n```\n\nThen you can use `hacluster` as the login name and your password in the web ui.\n\n#### Example usage\n\nYou can create a cluster using the web UI or via the CLI. Every node in the cluster must be running the pcs Docker container and must have a set password for the `hacluster` user. Then, on one of the nodes in the cluster run (modify pieces in []):\n```\ndocker exec -it pcs bash\npcs host auth -u hacluster -p [hapass] [master1 master2 master3]  # master[1-3] are hostnames of nodes in your cluster\npcs cluster setup [cluster_name] [master1 master2 master3] --start --enable\npcs status\n```\n\nCreate virtual ip:\n```\npcs resource create virtual-ip IPaddr2 ip=[192.168.92.3] --group [master-group]\n```\n\nDefine docker resource image:\n```\npcs resource create [docker-master] ocf:heartbeat:docker image=[docker-master] reuse=1 run_opts='[-p 8080]' --group [master-group]\n```\n\nDisable stonith (this will start the cluster):\n```\npcs property set stonith-enabled=false\n```\n\nYou can view and modify your cluster in the web UI even if you created it using the CLI. However, you need to add it to the web UI first (select 'Add existing').\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpschiffe%2Fpcs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpschiffe%2Fpcs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpschiffe%2Fpcs/lists"}