{"id":15173856,"url":"https://github.com/rancelin/podman-lmppstack","last_synced_at":"2026-02-14T03:36:27.966Z","repository":{"id":244092343,"uuid":"814217683","full_name":"rancelin/Podman-Lmppstack","owner":"rancelin","description":"Trying to setup a rootless Lmpp Stack on Podman","archived":false,"fork":false,"pushed_at":"2024-06-23T08:33:09.000Z","size":16,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-30T14:51:48.506Z","etag":null,"topics":["mariadb","php","php-cli","php83","phpmyadmin","podman"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rancelin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"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":"2024-06-12T15:04:59.000Z","updated_at":"2024-06-23T08:33:12.000Z","dependencies_parsed_at":"2024-06-15T10:26:10.892Z","dependency_job_id":"6574ce00-5768-491d-951e-09ad7a96a206","html_url":"https://github.com/rancelin/Podman-Lmppstack","commit_stats":{"total_commits":8,"total_committers":1,"mean_commits":8.0,"dds":0.0,"last_synced_commit":"a45bfb955abdced28d8a9cbd9f3ba7512487166e"},"previous_names":["rancelin/podman-lampstack"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rancelin/Podman-Lmppstack","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rancelin%2FPodman-Lmppstack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rancelin%2FPodman-Lmppstack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rancelin%2FPodman-Lmppstack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rancelin%2FPodman-Lmppstack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rancelin","download_url":"https://codeload.github.com/rancelin/Podman-Lmppstack/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rancelin%2FPodman-Lmppstack/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259311828,"owners_count":22838799,"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","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":["mariadb","php","php-cli","php83","phpmyadmin","podman"],"created_at":"2024-09-27T11:03:51.207Z","updated_at":"2025-10-04T07:59:02.695Z","avatar_url":"https://github.com/rancelin.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Podman Lmpp Stack\nTrying to setup a completely rootless Lmpp (Linux MariaDB PHP phpMyAdmin) Stack on Podman for web development purposes\n\n*Note: I am new to Podman and containers in general, I haven't tried to compose or build images yet. This is still a work in progress.*\n\n## *V0.2*\n\n### 1. Install [Podman](https://podman.io/)\n\n\u0026nbsp;\n\n### 2. Install [slirp4netns](https://github.com/rootless-containers/slirp4netns) to allow networking for unprivileged network namespaces.\n\n\u0026nbsp;\n\n### 3. Open your shell in the root folder of your project and type the following commands\n\n```fish copy\npodman pod create --name lmpp-stack --publish 8000:8000 --publish 8080:80 --publish 3306:3306\n```\n\u003e Creates a pod and opens the ports to listen to PHP, phpMyAdmin and MariaDB.\n\n\u0026nbsp;\n\n```fish copy\npodman run --detach --pod lmpp-stack --name mariadb --env MARIADB_ROOT_PASSWORD=root --volume \"$PWD\"/database:/var/lib/mysql:Z mariadb:latest\n```\n\u003e Creates a container with the latest version of MariaDB inside the pod. Gives a default 'root' password and the data from the database will be stored in the /database folder.\n\n\u0026nbsp;\n\n```fish copy\npodman run --detach --pod lmpp-stack --name php-cli --volume \"$PWD\"/code:/var/www/html:Z php:8.3-cli\n```\n\u003e Creates a container with PHP 8.3 and its builtin webserver inside the pod. By default you need your codebase to be located in the /code folder.\n\n\u0026nbsp;\n\n```fish copy\npodman exec php-cli /bin/bash -c 'docker-php-ext-install pdo pdo_mysql'\n```\n\u003e Installs the PDO and PDO-MYSQL extensions to the PHP container.\n\n\u0026nbsp;\n\n```fish copy\npodman exec php-cli /bin/bash -c 'php -m | grep -i pdo'\n```\n\u003e Helps you verify if the extensions are correctly installed.\n\n\u0026nbsp;\n\n```fish copy\npodman exec php-cli /bin/bash -c 'pecl install xdebug \u0026\u0026 docker-php-ext-enable xdebug'\n```\n\u003e Installs the Xdebug extension to the PHP container.\n\n\u0026nbsp;\n\n```fish copy\npodman exec php-cli /bin/bash -c 'php -m | grep -i xdebug'\n```\n\u003e Helps you verify if the Xdebug extension is correctly installed.\n\n\u0026nbsp;\n\n```fish copy\npodman run --detach --pod lmpp-stack --name phpmyadmin --env PMA_HOST=127.0.0.1 --env PMA_PORT=3306 phpmyadmin:latest\n```\n\u003e Creates a container with phpMyAdmin with the latest version inside the pod and connects it to MariaDB.\n\n\u0026nbsp;\n\n### 4. Usage\n\n```fish copy\npodman pod start lmpp-stack\n```\n\u003e Starts the pod and all its containers. *Note: the pod already started when we ran the first container above.* \n\n\u0026nbsp;\n\n```fish copy\npodman exec php-cli /bin/bash -c 'php -S localhost:8000'\n```\n\u003e Might be needed to start the builtin webserver.\n\n\u0026nbsp;\n\n```fish copy\npodman pod stop lmpp-stack\n```\n\u003e Stops the pod and all its containers.\n\n\u0026nbsp;\n\n### 5. Pod Removal\n\nIn case something wrong happened and/or you want to remove the pod and its containers, use the `podman pod stop lmpp-stack` command first then:\n\n```fish copy\npodman pod rm lmpp-stack\n```\n\u003e Removes the pod and all its containers.\n\n\u0026nbsp;\n\n```fish copy\npodman pod list\n```\n\u003e Shows all the existing pods. Helps you check if the pod has been correctly removed.\n\n\u0026nbsp;\n\n```fish copy\npodman ps --pod\n```\n\u003e Shows all the containers currently running in a pod. Helps you check if all the containers have been correctly stopped.\n\n\u0026nbsp;\n\n```fish copy\npodman rm -f \u003ccontainer_id\u003e\n```\n\u003e Forcefully stops and removes a container. It should not be needed since `podman pod rm lmpp-stack` should have removed the containers as well.\n\n\u0026nbsp;\n\n```fish copy\npodman images\n```\n\u003e Shows the downloaded images used to run the containers.\n\n\u0026nbsp;\n\n```fish copy\npodman rmi \u003cimage_id\u003e\n```\n\u003e Removes the image.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Francelin%2Fpodman-lmppstack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Francelin%2Fpodman-lmppstack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Francelin%2Fpodman-lmppstack/lists"}