# Praktek menjalankan container Postgres di Docker

Setelah Anda membuat dan menjalankan container PostgreSQL, Anda mungkin ingin menjalankan perintah di dalam container tersebut menggunakan perintah `docker exec`. Berikut adalah langkah-langkah untuk melakukan itu:

#### Langkah-langkah untuk Menjalankan Perintah di dalam Container PostgreSQL menggunakan `docker exec`

1. **Verifikasi Container Berjalan**:

   * Pastikan container PostgreSQL Anda sedang berjalan.

   ```sh
   docker ps
   ```
2. **Jalankan Perintah di dalam Container**:
   * Gunakan perintah `docker exec` untuk masuk ke shell di dalam container atau menjalankan perintah PostgreSQL.
3. **Mengakses Shell di dalam Container**:
   * Untuk mengakses shell di dalam container PostgreSQL, gunakan perintah:

     ```sh
     docker exec -it latihan-postgres bash
     ```
   * `-it` digunakan untuk menjalankan perintah dalam mode interaktif dengan tty (teletype interface).
4. **Menggunakan PostgreSQL Client (`psql`) di dalam Container**:
   * Setelah berada di dalam shell container, Anda dapat menggunakan PostgreSQL client `psql` untuk berinteraksi dengan database:

     ```sh
     psql -U postgres -d marketplace
     ```
   * `-U postgres`: Menentukan pengguna PostgreSQL (yang telah diatur saat membuat container).
   * `-d marketplace`: Menentukan database yang ingin diakses (juga diatur saat membuat container).

#### Contoh Langkah-langkah dengan Output

1. **Verifikasi Container Berjalan**:

   ```sh
   docker ps
   ```

   **Output**:

   ```
   CONTAINER ID   IMAGE      COMMAND                  CREATED        STATUS        PORTS                    NAMES
   abcdef123456   postgres   "docker-entrypoint.s…"   5 minutes ago  Up 5 minutes  0.0.0.0:5432->5432/tcp   latihan-postgres
   ```
2. **Mengakses Shell di dalam Container**:

   ```sh
   docker exec -it latihan-postgres bash
   ```

   **Output** (Anda akan masuk ke shell di dalam container):

   ```
   root@abcdef123456:/#
   ```
3. **Menggunakan PostgreSQL Client (`psql`)**:

   ```sh
   psql -U postgres -d marketplace
   ```

   **Output** (Anda akan masuk ke PostgreSQL prompt):

   ```
   psql (13.3)
   Type "help" for help.

   marketplace=#
   ```
4. **Menjalankan Perintah SQL di PostgreSQL**:

   * Anda sekarang bisa menjalankan perintah SQL di dalam PostgreSQL prompt. Misalnya, untuk melihat tabel yang ada:

     ```sql
     \dt
     ```

   **Output** (jika tidak ada tabel):

   ```
   No relations found.
   ```

#### Sumber

* [Docker Documentation - Docker Exec](https://docs.docker.com/engine/reference/commandline/exec/)
* [PostgreSQL Docker Hub](https://hub.docker.com/_/postgres)

Dengan langkah-langkah di atas, Anda dapat menjalankan perintah di dalam container PostgreSQL menggunakan `docker exec`. Ini memungkinkan Anda untuk melakukan administrasi database dan menjalankan perintah SQL di dalam lingkungan kontainer.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://zakimaliki.gitbook.io/docker/basic-docker-part-1/praktek-menjalankan-container-postgres-di-docker.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
