[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-25 UTC."],[[["\u003cp\u003eAlloyDB Omni can be installed in any UNIX-based environment that supports container runtimes, provided you have an agreement with Google governing Google Cloud offerings.\u003c/p\u003e\n"],["\u003cp\u003eThe minimum requirements for running AlloyDB Omni include either an x86-64 or Arm CPU with AVX2 support, 2 GB of RAM, 10 GB of disk space, and a compatible operating system such as Linux or macOS.\u003c/p\u003e\n"],["\u003cp\u003eAlloyDB Omni requires a container runtime such as Docker or Podman to be installed on your machine before proceeding with the AlloyDB Omni installation.\u003c/p\u003e\n"],["\u003cp\u003eYou can install AlloyDB Omni using either Docker or Podman, with the \u003ccode\u003edocker run\u003c/code\u003e or \u003ccode\u003epodman run\u003c/code\u003e command creating a new container named \u003ccode\u003emy-omni\u003c/code\u003e, and a user-set password for the \u003ccode\u003epostgres\u003c/code\u003e user.\u003c/p\u003e\n"],["\u003cp\u003eBy default, data is stored within the container, but you can customize the installation to mount a data directory on your host file system, and the steps for cleaning up your container are provided for both Docker and Podman.\u003c/p\u003e\n"]]],[],null,["# Install AlloyDB Omni\n\nSelect a documentation version: 16.3.0keyboard_arrow_down\n\n- [Current (16.8.0)](/alloydb/omni/current/docs/quickstart)\n- [16.8.0](/alloydb/omni/16.8.0/docs/quickstart)\n- [16.3.0](/alloydb/omni/16.3.0/docs/quickstart)\n- [15.12.0](/alloydb/omni/15.12.0/docs/quickstart)\n- [15.7.1](/alloydb/omni/15.7.1/docs/quickstart)\n- [15.7.0](/alloydb/omni/15.7.0/docs/quickstart)\n- [15.5.5](/alloydb/omni/15.5.5/docs/quickstart)\n- [15.5.4](/alloydb/omni/15.5.4/docs/quickstart)\n- [15.5.2](/alloydb/omni/15.5.2/docs/quickstart)\n\n\u003cbr /\u003e\n\nThis quickstart shows you how to install AlloyDB Omni that can run in any UNIX-based environment which supports container runtimes.\n\n\u003cbr /\u003e\n\nFor an overview of AlloyDB Omni, see [AlloyDB Omni overview](/alloydb/omni/16.3.0/docs).\n\nBefore you begin\n----------------\n\nBefore you install AlloyDB Omni, make sure that you meet the\nfollowing requirements.\n| **Note:** You can run AlloyDB Omni on macOS. However, AlloyDB Omni in a Docker container on macOS uses Docker's compatibility layer, which can result in reduced performance compared to running it directly on Linux.\n\n### Choose a download or installation option\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n### Fulfill hardware and software requirements\n\nMake sure that you meet the following minimum hardware and software requirements:\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| **Note:** AlloyDB Omni supports Arm ([Preview](https://cloud.google.com/products#product-launch-stages)).\n\n#### Verify that cgroupsv2 is enabled\n\nTo determine whether cgroupsv2 is enabled on your machine, run the following command: \n\n grep cgroup /proc/filesystems\n\nIf your machine supports cgroupsv2, you see the following output: \n\n nodev cgroup\n nodev cgroupsv2\n\nIf your machine doesn't support cgroupsv2, you see the following output: \n\n nodev cgroup\n\n### Install a container runtime\n\nInstall a container runtime like [Docker](https://docs.docker.com/engine/install/)\nor [Podman](https://podman.io/docs/installation). AlloyDB Omni\nruns in a container.\n\nInstall AlloyDB Omni using Docker\n---------------------------------\n\n[Root access](https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user) isn't required for installing AlloyDB Omni.\n**Note:** If you want to deploy AlloyDB Omni in your production environment, see [Run AlloyDB Omni in production](/alloydb/omni/current/docs/run-alloydb-omni-production). \n\n### Docker\n\n1. Use the `docker run` command to create a new container with AlloyDB Omni named `my-omni`:\n\n docker run --name my-omni \\\n -e POSTGRES_PASSWORD=\u003cvar translate=\"no\"\u003eNEW_PASSWORD\u003c/var\u003e \\\n -d google/alloydbomni:\u003cvar translate=\"no\"\u003eIMAGE_TAG\u003c/var\u003e\n\n Replace the following variables:\n - \u003cvar translate=\"no\"\u003eNEW_PASSWORD\u003c/var\u003e: the password to assign the new container's `postgres` user after its creation.\n - \u003cvar translate=\"no\"\u003eIMAGE_TAG\u003c/var\u003e: use `16.3.0` for the latest Debian\n image or`16.3.0-ubi` for the latest UBI image.\n\n | **Note:** By default, AlloyDB Omni stores your data on the container itself, and not on your host file system. The data directory is deleted once you delete your AlloyDB Omni container. To mount a data directory stored on your host file system, see instructions in [Customize your AlloyDB Omni installation](/alloydb/omni/16.3.0/docs/install).\n2. Connect to containerized AlloyDB Omni using `psql`:\n\n docker exec -it my-omni psql -h localhost -U postgres\n\n The terminal window displays `psql` login text that ends with a\n `postgres=#` prompt.\n\n### Podman\n\n1. Use the `docker run` command to create a new container with AlloyDB Omni named `my-omni`:\n\n podman run --name my-omni \\\n -e POSTGRES_PASSWORD=\u003cvar translate=\"no\"\u003eNEW_PASSWORD\u003c/var\u003e \\\n -d google/alloydbomni:\u003cvar translate=\"no\"\u003eIMAGE_TAG\u003c/var\u003e\n\n Replace the following variables:\n - \u003cvar translate=\"no\"\u003eNEW_PASSWORD\u003c/var\u003e: the password to assign the new container's `postgres` user after its creation.\n - \u003cvar translate=\"no\"\u003eIMAGE_TAG\u003c/var\u003e: use `16.3.0` for the latest Debian\n image or`16.3.0-ubi` for the latest UBI image.\n\n | **Note:** By default, AlloyDB Omni stores your data on the container itself, and not on your host file system. The data directory is deleted once you delete your AlloyDB Omni container. To mount a data directory stored on your host file system, see instructions in [Customize your AlloyDB Omni installation](/alloydb/omni/16.3.0/docs/install).\n2. Connect to containerized AlloyDB Omni using `psql`:\n\n podman exec -it my-omni psql -h localhost -U postgres\n\n The terminal window displays `psql` login text that ends with a\n `postgres=#` prompt.\n\nClean up\n--------\n\nTo clean up the AlloyDB Omni container you created during this quickstart, use these steps: \n\n### Docker\n\n1. Stop your AlloyDB Omni container named `my-omni`:\n\n docker container stop my-omni\n\n2. Delete your AlloyDB Omni container named `my-omni`:\n\n docker container rm my-omni\n\n### Podman\n\n1. Stop your AlloyDB Omni container named `my-omni`:\n\n podman container stop my-omni\n\n2. Delete your AlloyDB Omni container named `my-omni`:\n\n podman container rm my-omni\n\nFor instructions how to install AlloyDB Omni in a new container for production usage, go to the [Customize your AlloyDB Omni installation](/alloydb/omni/16.3.0/docs/install) page.\n\nWhat's next\n-----------\n\n- [Run and connect to AlloyDB Omni](/alloydb/omni/16.3.0/docs/run-connect)\n\n- [Customize your AlloyDB Omni installation](/alloydb/omni/16.3.0/docs/install)\n\n- [Set up your AlloyDB Omni for production](/alloydb/omni/16.3.0/docs/configure-omni)"]]