

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Manajer aplikasi Docker
<a name="docker-application-manager-component"></a>

Komponen manajer aplikasi Docker (`aws.greengrass.DockerApplicationManager`) memungkinkan AWS IoT Greengrass untuk mengunduh gambar Docker dari pendaftar gambar publik dan pendaftar pribadi yang dihosting di Amazon Elastic Container Registry (Amazon ECR). Ini juga memungkinkan AWS IoT Greengrass untuk mengelola kredensitas secara otomatis untuk mengunduh gambar dengan aman dari repositori pribadi di Amazon ECR.

Ketika Anda mengembangkan komponen kustom yang menjalankan kontainer Docker, sertakan manajer aplikasi Docker sebagai dependensi untuk men-download gambar Docker yang ditetapkan sebagai artefak dalam komponen Anda. Untuk informasi selengkapnya, lihat [Jalankan kontainer Docker](run-docker-container.md).

**Topics**
+ [Versi](#docker-application-manager-component-versions)
+ [Jenis](#docker-application-manager-component-type)
+ [Sistem operasi](#docker-application-manager-component-os-support)
+ [Persyaratan](#docker-application-manager-component-requirements)
+ [Dependensi](#docker-application-manager-component-dependencies)
+ [Konfigurasi](#docker-application-manager-component-configuration)
+ [File log lokal](#docker-application-manager-component-log-file)
+ [Changelog](#docker-application-manager-component-changelog)
+ [Lihat juga](#docker-application-manager-component-see-also)

## Versi
<a name="docker-application-manager-component-versions"></a>

Komponen ini memiliki versi berikut:
+ 2.0.x

## Jenis
<a name="docker-application-manager-component-type"></a>

<a name="public-component-type-generic"></a><a name="public-component-type-generic-phrase"></a>Komponen ini adalah komponen generik (`aws.greengrass.generic`). Inti [Greengrass](greengrass-nucleus-component.md) menjalankan skrip siklus hidup komponen.

<a name="public-component-type-more-information"></a>Untuk informasi selengkapnya, lihat [Jenis komponen](develop-greengrass-components.md#component-types).

## Sistem operasi
<a name="docker-application-manager-component-os-support"></a>

Komponen ini dapat diinstal pada perangkat inti yang menjalankan sistem operasi berikut:
+ Linux
+ Windows

## Persyaratan
<a name="docker-application-manager-component-requirements"></a>

Komponen ini memiliki persyaratan sebagai berikut:
+ <a name="docker-engine-requirement"></a>[Docker Engine](https://docs.docker.com/engine/) 1.9.1 atau yang lebih baru diinstal pada perangkat inti Greengrass. Versi 20.10 adalah versi terbaru yang diverifikasi untuk bekerja dengan perangkat lunak AWS IoT Greengrass Core. Anda harus menginstal Docker langsung pada perangkat inti sebelum Anda menyebarkan komponen yang menjalankan kontainer Docker.
+ <a name="docker-daemon-requirement"></a>Daemon Docker dimulai dan berjalan pada perangkat inti sebelum Anda men-deploy komponen ini. 
+ Docker gambar disimpan di salah satu sumber gambar yang didukung berikut:
  + Repositori gambar publik dan privat di Amazon Elastic Container Registry (Amazon ECR)
  + Repositori Hub Docker publik
  + Registri Terpercaya Docker publik
+ Gambar Docker disertakan sebagai artefak dalam komponen kontainer Docker kustom Anda. Gunakan format URI berikut untuk menentukan gambar Docker Anda:<a name="docker-image-artifact-uri"></a>
  + Gambar Amazon ECR privat: `docker:account-id.dkr.ecr.region.amazonaws.com/repository/image[:tag|@digest]`
  + Citra Amazon ECR publik: `docker:public.ecr.aws/repository/image[:tag|@digest]`
  + Gambar Hub Docker publik: `docker:name[:tag|@digest]`

  Untuk informasi selengkapnya, lihat [Jalankan kontainer Docker](run-docker-container.md).
**catatan**  
Jika Anda tidak menentukan tanda gambar atau digest gambar di URI artefak untuk gambar, maka manajer aplikasi Docker akan menarik versi terbaru yang tersedia dari gambar tersebut ketika Anda menggunakan komponen kontainer Docker kustom Anda. Untuk memastikan bahwa semua perangkat inti menjalankan versi gambar yang sama, sebaiknya sertakan tag gambar atau diges gambar di URI artefak.
+ <a name="docker-user-permissions-requirement"></a>Pengguna sistem yang menjalankan komponen kontainer Docker harus memiliki izin root atau administrator, atau Anda harus mengonfigurasi Docker untuk menjalankannya sebagai pengguna non-root atau non-admistrator.
  + Pada perangkat Linux, Anda dapat menambahkan pengguna ke `docker` grup untuk memanggil `docker` perintah tanpa`sudo`.
  + Pada perangkat Windows, Anda dapat menambahkan pengguna ke `docker-users` grup untuk memanggil `docker` perintah tanpa hak istimewa adminstrator.

------
#### [ Linux or Unix ]

  Untuk menambahkan`ggc_user`, atau pengguna non-root yang Anda gunakan untuk menjalankan komponen kontainer Docker, ke `docker` grup, jalankan perintah berikut.

  ```
  sudo usermod -aG docker ggc_user
  ```

  Untuk informasi selengkapnya, lihat [Mengelola Docker sebagai pengguna non-root](https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user).

------
#### [ Windows Command Prompt (CMD) ]

  Untuk menambahkan`ggc_user`, atau pengguna yang Anda gunakan untuk menjalankan komponen kontainer Docker, ke `docker-users` grup, jalankan perintah berikut sebagai administrator.

  ```
  net localgroup docker-users ggc_user /add
  ```

------
#### [ Windows PowerShell ]

  Untuk menambahkan`ggc_user`, atau pengguna yang Anda gunakan untuk menjalankan komponen kontainer Docker, ke `docker-users` grup, jalankan perintah berikut sebagai administrator.

  ```
  Add-LocalGroupMember -Group docker-users -Member ggc_user
  ```

------
+ <a name="docker-proxy-requirement"></a>Jika Anda [mengkonfigurasi perangkat lunak AWS IoT Greengrass Core untuk menggunakan proxy jaringan](configure-greengrass-core-v2.md#configure-alpn-network-proxy), Anda harus [mengkonfigurasi Docker untuk menggunakan server proxy yang sama](https://docs.docker.com/network/proxy/).
+ Jika gambar Docker Anda disimpan dalam registri privat Amazon ECR, maka Anda harus menyertakan komponen layanan pertukaran token sebagai dependensi dalam komponen kontainer Docker. Juga, [peran perangkat Greengrass](device-service-role.md) harus mengizinkan tindakan `ecr:GetAuthorizationToken`, `ecr:BatchGetImage`, dan `ecr:GetDownloadUrlForLayer`, seperti yang ditunjukkan dalam contoh kebijakan IAM berikut.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "ecr:GetAuthorizationToken",
          "ecr:BatchGetImage",
          "ecr:GetDownloadUrlForLayer"
        ],
        "Resource": [
          "*"
        ],
        "Effect": "Allow"
      }
    ]
  }
  ```

------

  ```
  ```
+ Komponen manajer aplikasi docker didukung untuk berjalan di VPC. Untuk menerapkan komponen ini di VPC, berikut ini diperlukan.
  + Komponen manajer aplikasi docker harus memiliki konektivitas untuk mengunduh gambar. Misalnya, jika Anda menggunakan ECR, Anda harus memiliki konektivitas ke titik akhir berikut.
    + `*.dkr.ecr.region.amazonaws.com`(Titik akhir VPC) `com.amazonaws.region.ecr.dkr`
    + `api.ecr.region.amazonaws.com`(Titik akhir VPC) `com.amazonaws.region.ecr.api`

### Titik akhir dan port
<a name="docker-application-manager-component-endpoints"></a>

Komponen ini harus dapat melakukan permintaan keluar ke titik akhir dan port berikut, selain titik akhir dan port yang diperlukan untuk operasi dasar. Untuk informasi selengkapnya, lihat [Izinkan lalu lintas perangkat melalui proxy atau firewall](allow-device-traffic.md).


| Titik akhir | Port | Diperlukan | Deskripsi | 
| --- | --- | --- | --- | 
|  `ecr.region.amazonaws.com`  | 443 | Tidak |  Diperlukan jika Anda mengunduh gambar Docker dari Amazon ECR.  | 
|  `hub.docker.com` `registry.hub.docker.com/v1`  | 443 | Tidak |  Diperlukan jika Anda mengunduh gambar Docker dari Docker Hub.  | 

## Dependensi
<a name="docker-application-manager-component-dependencies"></a>

Saat Anda menerapkan komponen, gunakan AWS IoT Greengrass juga versi dependensinya yang kompatibel. Ini berarti bahwa Anda harus memenuhi persyaratan untuk komponen dan semua dependensinya untuk berhasil men-deploy komponen. Bagian ini berisi daftar dependensi untuk [versi yang dirilis](#docker-application-manager-component-changelog) dari komponen ini dan kendala versi semantik yang menentukan versi komponen untuk setiap dependensi. Anda juga dapat melihat dependensi untuk setiap versi komponen di [konsol AWS IoT Greengrass](https://console.aws.amazon.com//greengrass) tersebut. Pada halaman detail komponen, cari daftar **Dependensi**.

------
#### [ 2.0.15 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.15 dari komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.17.0 | Lunak | 

------
#### [ 2.0.14 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.14 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.16.0 | Lunak | 

------
#### [ 2.0.13 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.13 dari komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.15.0 | Lunak | 

------
#### [ 2.0.12 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.12 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.14.0 | Lunak | 

------
#### [ 2.0.11 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.11 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.13.0 | Lunak | 

------
#### [ 2.0.10 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.10 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.12.0 | Lunak | 

------
#### [ 2.0.9 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.9 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.11.0 | Lunak | 

------
#### [ 2.0.8 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.8 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.10.0 | Lunak | 

------
#### [ 2.0.7 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.7 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.9.0 | Lunak | 

------
#### [ 2.0.6 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.6 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.8.0 | Lunak | 

------
#### [ 2.0.5 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.5 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.7.0 | Lunak | 

------
#### [ 2.0.4 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.4 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.6.0 | Lunak | 

------
#### [ 2.0.3 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.3 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.5.0 | Lunak | 

------
#### [ 2.0.2 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.2 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.4.0 | Lunak | 

------
#### [ 2.0.1 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.1 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.3.0 | Lunak | 

------
#### [ 2.0.0 ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.0 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.2.0 | Lunak | 

------

Untuk informasi selengkapnya tentang dependensi komponen, lihat [referensi resep komponen](component-recipe-reference.md#recipe-reference-component-dependencies).

## Konfigurasi
<a name="docker-application-manager-component-configuration"></a>

Komponen ini tidak memiliki parameter konfigurasi apapun.

## File log lokal
<a name="docker-application-manager-component-log-file"></a>

Komponen ini menggunakan file log yang sama dengan komponen inti [Greengrass](greengrass-nucleus-component.md).

------
#### [ Linux ]

```
/greengrass/v2/logs/greengrass.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\greengrass.log
```

------

**Untuk melihat log komponen ini**
+ Jalankan perintah berikut pada perangkat inti untuk melihat file log komponen ini secara real time. Ganti `/greengrass/v2` atau *C:\$1greengrass\$1v2* dengan jalur ke folder AWS IoT Greengrass root.

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/greengrass.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait
  ```

------

## Changelog
<a name="docker-application-manager-component-changelog"></a>

Tabel berikut menjelaskan perubahan dalam setiap versi komponen.


|   **Versi**   |   **Perubahan**   | 
| --- | --- | 
|  2.0.15  |  Versi diperbarui untuk Greengrass nucleus versi 2.16.0 rilis.  | 
|  2.0.14  | Versi diperbarui untuk Greengrass nucleus versi 2.15.0 rilis. | 
|  2.0.13  | Versi diperbarui untuk Greengrass nucleus versi 2.14.0 rilis. | 
|  2.0.12  | Versi diperbarui untuk Greengrass nucleus versi 2.13.0 rilis. | 
|  2.0.11  | Versi diperbarui untuk Greengrass nucleus versi 2.12.0 rilis. | 
|  2.0.10  | Versi diperbarui untuk Greengrass nucleus versi 2.11.0 rilis. | 
|  2.0.9  | Versi diperbarui untuk Greengrass nucleus versi 2.10.0 rilis. | 
|  2.0.8  | Versi diperbarui untuk Greengrass nucleus versi 2.9.0 rilis. | 
|  2.0.7  | Versi diperbarui untuk Greengrass nucleus versi 2.8.0 rilis. | 
|  2.0.6  |  Versi diperbarui untuk Greengrass nucleus versi 2.7.0 rilis.  | 
|  2.0.5  |  Versi diperbarui untuk Greengrass nucleus versi 2.6.0 rilis.  | 
|  2.0.4  |  Versi diperbarui untuk Greengrass nucleus versi 2.5.0 rilis.  | 
|  2.0.3  |  Versi diperbarui untuk Greengrass nucleus versi 2.4.0 rilis.  | 
|  2.0.2  |  Versi yang diperbarui untuk rilis inti Greengrass versi 2.3.0.  | 
|  2.0.1  |  Versi yang diperbarui untuk rilis inti Greengrass versi 2.2.0.  | 
|  2.0.0  |  Versi awal.  | 

## Lihat juga
<a name="docker-application-manager-component-see-also"></a>
+  [Jalankan kontainer Docker](run-docker-container.md) 