

Pemberitahuan akhir dukungan: Pada 7 Oktober 2026, dukungan AWS akan berakhir untuk AWS Proton. Setelah 7 Oktober 2026, Anda tidak akan lagi dapat mengakses AWS Proton konsol atau AWS Proton sumber daya. Infrastruktur yang Anda gunakan akan tetap utuh. Untuk informasi selengkapnya, lihat Panduan [AWS Proton Penghentian Layanan dan Migrasi. ](https://docs.aws.amazon.com/proton/latest/userguide/proton-end-of-support.html)

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

# Buat layanan
<a name="ag-create-svc"></a>

Untuk menerapkan aplikasi dengan AWS Proton, sebagai pengembang, Anda membuat layanan dan memberikan input berikut.

1. Nama template AWS Proton layanan yang diterbitkan oleh tim platform.

1. Sebuah nama untuk layanan.

1. Jumlah instance layanan yang ingin Anda terapkan.

1. Pilihan lingkungan yang ingin Anda gunakan.

1. Koneksi ke repositori kode Anda jika Anda menggunakan template layanan yang menyertakan saluran layanan (opsional).

## Apa yang ada dalam layanan?
<a name="ag-create-svc.info"></a>

Saat membuat AWS Proton layanan, Anda dapat memilih dari dua jenis templat layanan yang berbeda:
+ Template layanan yang menyertakan saluran layanan (default).
+ Template layanan yang * tidak * menyertakan saluran layanan.

Anda harus membuat setidaknya satu instance layanan saat membuat layanan Anda.

Instance layanan dan pipeline opsional dikaitkan dengan layanan. Anda hanya dapat membuat atau menghapus pipeline dalam konteks * tindakan pembuatan * dan * penghap * usan layanan. Untuk mempelajari cara menambahkan dan menghapus instans dari layanan, lihat[Mengedit layanan](ag-svc-update.md).

**catatan**  
Lingkungan Anda dikonfigurasi untuk penyediaan AWS- atau yang dikelola sendiri. AWS Proton menyediakan layanan di lingkungan menggunakan metode penyediaan yang sama seperti yang digunakan lingkungan. Pengembang yang membuat atau memperbarui instance layanan tidak melihat perbedaannya dan pengalaman mereka sama dalam kedua kasus.  
Untuk informasi selengkapnya tentang metode penyediaan, lihat[Bagaimana AWS Proton infrastruktur penyediaan](ag-works-prov-methods.md).

## Templat layanan
<a name="ag-create-svc.templates"></a>

Template layanan versi utama dan minor tersedia. Saat Anda menggunakan konsol, Anda memilih versi `Recommended` utama dan minor terbaru dari template layanan. Ketika Anda menggunakan AWS CLI dan Anda hanya menentukan versi utama dari template layanan, Anda secara implisit menentukan versi `Recommended` minor terbarunya.

Berikut ini menjelaskan perbedaan antara versi template utama dan minor dan penggunaannya.
+ Versi baru dari template menjadi `Recommended` segera setelah disetujui oleh anggota tim platform. Ini berarti bahwa layanan baru dibuat menggunakan versi itu, dan Anda diminta untuk memperbarui layanan yang ada ke versi baru.
+ Melalui AWS Proton, tim platform dapat secara otomatis memperbarui instance layanan ke versi minor baru dari template layanan. Versi minor harus kompatibel ke belakang. 
+ Karena versi utama mengharuskan Anda untuk memberikan input baru sebagai bagian dari proses pembaruan, Anda perlu memperbarui layanan Anda ke versi utama template layanannya. Versi utama * tidak kompatibel * ke belakang.

## Buat layanan
<a name="ag-create-svc.procedure"></a>

Prosedur berikut menunjukkan cara menggunakan AWS Proton konsol atau AWS CLI membuat layanan dengan atau tanpa saluran layanan.

------
#### [ Konsol Manajemen AWS ]

**Buat layanan seperti yang ditunjukkan pada langkah-langkah konsol berikut.**

1. Di [AWS Proton konsol](https://console.aws.amazon.com/proton/), pilih ** Layanan**.

1. Pilih **Buat layanan**.

1. Di ** halaman ** Pilih template layanan, pilih template dan pilih ** Konfigurasi**.

   Jika Anda * tidak * ingin menggunakan pipeline yang diaktifkan, pilih template yang ditandai dengan Exclu * ded pipeline * untuk layanan Anda.

1. Di ** halaman ** Konfigurasi layanan, di ** bagian Pengaturan ** layanan, masukkan nama ** Layanan**.

1. (Opsional) Masukkan deskripsi untuk layanan.

1. 

**Dalam **Pengaturan repositori layanan** bagian:**

   1. Untuk ** CodeStar Koneksi**, pilih koneksi Anda dari daftar.

   1. Untuk ID ** Repositori**, pilih nama repositori kode sumber Anda dari daftar.

   1. Untuk Nama ** cabang**, pilih nama cabang repositori kode sumber Anda dari daftar.

1. (Opsional) Di ** bagian ** Tag, pilih ** Tambahkan tag baru ** dan masukkan kunci dan nilai untuk membuat tag yang dikelola pelanggan.

1. Pilih **Berikutnya**.

1. Di ** halaman ** Konfigurasi pengaturan kustom, di ** bagian Instans ** layanan, di ** bagian Instans ** baru. Anda harus memasukkan nilai untuk `required` parameter. Anda dapat memasukkan nilai untuk `optional` parameter atau menggunakan default saat diberikan.

1. Di ** bagian ** input Pipeline, Anda harus memasukkan nilai untuk `required` parameter. Anda dapat memasukkan nilai untuk `optional` parameter atau menggunakan default saat diberikan.

1. Pilih Ber ** ikutnya ** dan tinjau masukan Anda.

1. Pilih **Buat**.

   Lihat detail dan status layanan, serta tag terkel AWS ola dan tag yang dikelola pelanggan untuk layanan Anda.

1. Pada panel navigasi, silakan pilih **Layanan**.

   Halaman baru menampilkan daftar layanan Anda bersama dengan status dan detail layanan lainnya.

------
#### [ AWS CLI ]

Saat Anda menggunakan AWS CLI, Anda menentukan input layanan dalam `spec` file berformat YAML,`.aws-proton/service.yaml`, yang terletak di direktori kode sumber Anda.

Anda dapat menggunakan `get-service-template-minor-version` perintah CLI untuk melihat skema yang diperlukan dan parameter opsional yang Anda berikan nilainya dalam file spesifikasi Anda.

Jika Anda ingin menggunakan template layanan yang memiliki`pipelineProvisioning: "CUSTOMER_MANAGED"`, * jangan ser * takan `pipeline:` bagian dalam spesifikasi Anda dan * jangan ser * takan`-repository-connection-arn`,`-repository-id`, dan `-branch-name` parameter dalam `create-service` perintah Anda.

**Buat layanan dengan pipeline layanan seperti yang ditunjukkan pada langkah-langkah CLI berikut. **

1. **Siapkan peran [ layanan ](security_iam_service-role-policy-examples.md#codepipeline-proton-svc-role) untuk pipeline seperti yang ditunjukkan dalam contoh perintah CLI berikut. **

   Perintah:

   ```
   $ aws proton update-account-settings \
           --pipeline-service-role-arn "arn:aws:iam::{{123456789012}}:role/{{AWS ProtonServiceRole}}"
   ```

1. Daftar berikut menunjukkan contoh spesifikasi, berdasarkan skema template layanan, yang mencakup pipeline layanan dan input instance.

   Spesifikasi:

   ```
   proton: ServiceSpec
   
   pipeline:
     my_sample_pipeline_required_input: "hello"
     my_sample_pipeline_optional_input: "bye"
   
   instances:
     - name: "acme-network-dev"
       environment: "ENV_NAME"
       spec:
         my_sample_service_instance_required_input: "hi"
         my_sample_service_instance_optional_input: "ho"
   ```

   **Buat layanan dengan pipeline seperti yang ditunjukkan dalam contoh perintah dan respons CLI berikut. **

   Perintah:

   ```
   $ aws proton create-service \
           --name "{{MySimpleService}}" \
           --branch-name "{{mainline}}" \
           --template-major-version "{{1}}" \
           --template-name "{{fargate-service}}" \
           --repository-connection-arn "arn:aws:codestar-connections:{{region-id}}:{{123456789012}}:connection/{{a1b2c3d4-5678-90ab-cdef-EXAMPLE11111}}" \
           --repository-id "{{myorg/myapp}}" \
           --spec "{{file://spec.yaml}}"
   ```

   Respons:

   ```
   {
       "service": {
           "arn": "arn:aws:proton:region-id:123456789012:service/MySimpleService",
           "createdAt": "2020-11-18T19:50:27.460000+00:00",
           "lastModifiedAt": "2020-11-18T19:50:27.460000+00:00",
           "name": "MySimpleService",
           "repositoryConnectionArn": "arn:aws:codestar-connections:region-id:123456789012:connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
           "repositoryId": "myorg/myapp",
           "status": "CREATE_IN_PROGRESS",
           "templateName": "fargate-service"
       }
   }
   ```

**Buat layanan tanpa saluran layanan seperti yang ditunjukkan dalam contoh perintah dan respons CLI berikut. **

Berikut ini menunjukkan contoh spesifikasi yang * tidak menyer * takan input saluran layanan.

Spesifikasi:

```
proton: ServiceSpec

instances:
  - name: "acme-network-dev"
    environment: "ENV_NAME"
    spec:
      my_sample_service_instance_required_input: "hi"
      my_sample_service_instance_optional_input: "ho"
```

**Untuk membuat layanan * tanpa pipeline layanan * yang disediakan, Anda menyediakan jalur ke `spec.yaml` a dan Anda * tidak menyer * takan parameter repositori seperti yang ditunjukkan dalam contoh perintah dan respons CLI berikut. **

Perintah:

```
$ aws proton create-service \
        --name "{{MySimpleServiceNoPipeline}}" \
        --template-major-version "{{1}}" \
        --template-name "{{fargate-service}}" \
        --spec "{{file://spec-no-pipeline.yaml}}"
```

Respons:

```
{
    "service": {
        "arn": "arn:aws:proton:region-id:123456789012:service/MySimpleServiceNoPipeline",
        "createdAt": "2020-11-18T19:50:27.460000+00:00",
        "lastModifiedAt": "2020-11-18T19:50:27.460000+00:00",
        "name": "MySimpleServiceNoPipeline",
        "status": "CREATE_IN_PROGRESS",
        "templateName": "fargate-service-no-pipeline"
    }
}
```

------