mirror of
https://github.com/jbranchaud/til
synced 2026-01-04 23:58:01 +00:00
Add Configure Different Host And Container Ports as a Docker TIL
This commit is contained in:
@@ -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).
|
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)
|
* [CSS](#css)
|
||||||
* [Deno](#deno)
|
* [Deno](#deno)
|
||||||
* [Devops](#devops)
|
* [Devops](#devops)
|
||||||
|
* [Docker](#docker)
|
||||||
* [Elixir](#elixir)
|
* [Elixir](#elixir)
|
||||||
* [Gatsby](#gatsby)
|
* [Gatsby](#gatsby)
|
||||||
* [Git](#git)
|
* [Git](#git)
|
||||||
@@ -184,6 +185,10 @@ _1375 TILs and counting..._
|
|||||||
- [SSL Certificates Can Cover Multiple Domains](devops/ssl-certificates-can-cover-multiple-domains.md)
|
- [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)
|
- [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
|
### Elixir
|
||||||
|
|
||||||
- [All Values For A Key In A Keyword List](elixir/all-values-for-a-key-in-a-keyword-list.md)
|
- [All Values For A Key In A Keyword List](elixir/all-values-for-a-key-in-a-keyword-list.md)
|
||||||
|
|||||||
34
docker/configure-different-host-and-container-ports.md
Normal file
34
docker/configure-different-host-and-container-ports.md
Normal 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`.
|
||||||
Reference in New Issue
Block a user