Utilisation de la plateforme Go - AWS App Runner

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utilisation de la plateforme Go

La plateforme AWS App Runner Go fournit des environnements d'exécution gérés. Chaque environnement d'exécution facilite la création et l'exécution de conteneurs avec des applications Web basées sur une version Go. Lorsque vous utilisez un environnement d'exécution Go, App Runner démarre avec une image d'exécution Go gérée. Cette image est basée sur l'image Docker d'Amazon Linux et contient le package d'exécution pour une version de Go ainsi que certains outils. App Runner utilise cette image d'exécution gérée comme image de base et ajoute le code de votre application pour créer une image Docker. Il déploie ensuite cette image pour exécuter votre service Web dans un conteneur.

Vous spécifiez un environnement d'exécution pour votre service App Runner lorsque vous créez un service à l'aide de la console App Runner ou de l'opération CreateServiceAPI. Vous pouvez également spécifier un environnement d'exécution dans le cadre de votre code source. Utilisez le runtime mot clé dans un fichier de configuration App Runner que vous incluez dans votre référentiel de code. La convention de dénomination d'un environnement d'exécution géré est. <language-name><major-version>

Pour les noms et versions d'exécution Go valides, consultezInformations sur les versions de Go Runtime.

App Runner met à jour le moteur d'exécution de votre service avec la dernière version à chaque déploiement ou mise à jour de service. Si votre application nécessite une version spécifique d'un environnement d'exécution géré, vous pouvez le spécifier à l'aide du runtime-version mot clé dans le fichier de configuration d'App Runner. Vous pouvez verrouiller n'importe quel niveau de version, y compris une version majeure ou mineure. App Runner apporte uniquement des mises à jour de niveau inférieur à l'environnement d'exécution de votre service.

Syntaxe de version pour les environnements d'exécution Go : major[.minor[.patch]]

Par exemple : 1.18.7

Les exemples suivants illustrent le verrouillage des versions :

  • 1.18— Verrouillez les versions majeures et mineures. App Runner met à jour uniquement les versions de correctif.

  • 1.18.7— Verrouillez vers une version de correctif spécifique. App Runner ne met pas à jour votre version d'exécution.

Configuration de l'environnement d'exécution Go

Lorsque vous choisissez un environnement d'exécution géré, vous devez également configurer, au minimum, créer et exécuter des commandes. Vous les configurez lors de la création ou de la mise à jour de votre service App Runner. Pour ce faire, vous pouvez utiliser l'une des méthodes suivantes :

  • Utilisation de la console App Runner : spécifiez les commandes dans la section Configurer le build de l'onglet Processus de création ou configuration.

  • Utilisation de l'API App Runner : appelez l'opération CreateServiceou UpdateServiceAPI. Spécifiez les commandes à l'aide des StartCommand membres BuildCommand et du type de CodeConfigurationValuesdonnées.

  • Utilisation d'un fichier de configuration : spécifiez une ou plusieurs commandes de génération en trois phases de génération au maximum, ainsi qu'une seule commande d'exécution servant à démarrer votre application. Il existe d'autres paramètres de configuration facultatifs.

La fourniture d'un fichier de configuration est facultative. Lorsque vous créez un service App Runner à l'aide de la console ou de l'API, vous spécifiez si App Runner obtient vos paramètres de configuration directement lors de sa création ou à partir d'un fichier de configuration.

Exemples d'exécution Go

Les exemples suivants montrent les fichiers de configuration App Runner permettant de créer et d'exécuter un service Go.

Cet exemple montre un fichier de configuration minimal que vous pouvez utiliser avec un environnement d'exécution géré par Go. Pour les hypothèses formulées par App Runner avec un fichier de configuration minimal, consultezExemples de fichiers de configuration.

Exemple apprunner.yaml
version: 1.0 runtime: go1 build: commands: build: - go build main.go run: command: ./main

Cet exemple montre l'utilisation de toutes les clés de configuration avec un environnement d'exécution géré par Go.

Note

La version d'exécution utilisée dans ces exemples est 1.18.7. Vous pouvez le remplacer par la version que vous souhaitez utiliser. Pour la dernière version d'exécution de Go prise en charge, voirInformations sur les versions de Go Runtime.

Exemple apprunner.yaml
version: 1.0 runtime: go1 build: commands: pre-build: - scripts/prebuild.sh build: - go build main.go post-build: - scripts/postbuild.sh env: - name: MY_VAR_EXAMPLE value: "example" run: runtime-version: 1.18.7 command: ./main network: port: 3000 env: APP_PORT env: - name: MY_VAR_EXAMPLE value: "example"

Ces exemples montrent le code source d'une application Go complète que vous pouvez déployer sur un service d'exécution Go.

Exemple main.go
package main import ( "fmt" "net/http" ) func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { fmt.Fprint(w, "<h1>Welcome to App Runner</h1>") }) fmt.Println("Starting the server on :3000...") http.ListenAndServe(":3000", nil) }
Exemple apprunner.yaml
version: 1.0 runtime: go1 build: commands: build: - go build main.go run: command: ./main network: port: 3000 env: APP_PORT