1
0
mirror of https://github.com/jbranchaud/til synced 2026-01-02 22:58:01 +00:00

Add Configure Different Host And Container Ports as a Docker TIL

This commit is contained in:
jbranchaud
2024-02-24 12:44:23 -06:00
parent fe8d06b94a
commit a61a22f707
2 changed files with 40 additions and 1 deletions

View File

@@ -10,7 +10,7 @@ pairing with smart people at Hashrocket.
For a steady stream of TILs, [sign up for my newsletter](https://crafty-builder-6996.ck.page/e169c61186).
_1375 TILs and counting..._
_1376 TILs and counting..._
---
@@ -24,6 +24,7 @@ _1375 TILs and counting..._
* [CSS](#css)
* [Deno](#deno)
* [Devops](#devops)
* [Docker](#docker)
* [Elixir](#elixir)
* [Gatsby](#gatsby)
* [Git](#git)
@@ -184,6 +185,10 @@ _1375 TILs and counting..._
- [SSL Certificates Can Cover Multiple Domains](devops/ssl-certificates-can-cover-multiple-domains.md)
- [Wipe A Heroku Postgres Database](devops/wipe-a-heroku-postgres-database.md)
### Docker
- [Configure Different Host And Container Ports](docker/configure-different-host-and-container-ports.md)
### Elixir
- [All Values For A Key In A Keyword List](elixir/all-values-for-a-key-in-a-keyword-list.md)

View File

@@ -0,0 +1,34 @@
# Configure Different Host And Container Ports
A `docker-compose.yml` file that sets up something like a PostgreSQL service
will proxy a port from your host machine to a port on the docker container.
A basic PostgreSQL service will look like this tying `5432` to `5432` under the
`ports` section.
```yaml
version: "3.7"
services:
postgres:
image: postgres:latest
restart: always
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
- POSTGRES_DB=postgres
ports:
- "5432:5432"
volumes:
- ./postgres-data:/var/lib/postgresql/data
```
Requests like queries from a `psql` instance that we send to `localhost:5432`
will be proxied to `docker-container:5432`.
Since those numbers are the same on both sides, it's not necessarily clear
which is which. The left is the _host_ and the right is the _container_ --
`[host-port]:[container-port]`.
If you need to use a port other than 5432 on your host machine (e.g. maybe
you're running multiple Postgres servers at once), then you can just change the
port number on the left side. How about `9876:5432`.