Skip to content

Commit ef540d5

Browse files
EigoOdaOkabe-Junya
andauthored
[ja] Translate Define a Command and Arguments for a Container into Japanese (#45545)
* Translate define-command-argument-container.md into Japanese * Translate into Japanese * Translate into Japanese * Translate into Japanese * Update content/ja/docs/tasks/inject-data-application/define-command-argument-container.md Co-authored-by: Junya Okabe <[email protected]> * Update content/ja/docs/tasks/inject-data-application/define-command-argument-container.md Co-authored-by: Junya Okabe <[email protected]> * Update content/ja/docs/tasks/inject-data-application/define-command-argument-container.md Co-authored-by: Junya Okabe <[email protected]> * Fix to translate techniques --------- Co-authored-by: Junya Okabe <[email protected]>
1 parent 9cf1906 commit ef540d5

File tree

1 file changed

+97
-0
lines changed

1 file changed

+97
-0
lines changed
Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
---
2+
title: コンテナにコマンドと引数を定義する
3+
content_type: task
4+
weight: 10
5+
---
6+
7+
<!-- overview -->
8+
9+
このページでは、{{< glossary_tooltip term_id="pod" >}}でコンテナを実行するときにコマンドと引数を定義する方法を説明します。
10+
11+
12+
13+
14+
## {{% heading "prerequisites" %}}
15+
16+
17+
{{< include "task-tutorial-prereqs.md" >}} {{< version-check >}}
18+
19+
20+
21+
22+
<!-- steps -->
23+
24+
## Podの作成時にコマンドと引数を定義する
25+
26+
Podを作成するときに、Pod内で実行するコンテナのコマンドと引数を定義できます。コマンドを定義するには、設定ファイルに`command`フィールドを記述します。コマンドの引数を定義するには、設定ファイルに`args`フィールドを記述します。定義したコマンドと引数はPodの作成後に変更することはできません。
27+
28+
設定ファイルで定義したコマンドと引数は、コンテナイメージが提供するデフォルトのコマンドと引数を上書きします。引数を定義し、コマンドを定義しなかった場合、デフォルトのコマンドと新しい引数が使用されます。
29+
30+
{{< note >}}
31+
`command`フィールドは、いくつかのコンテナランタイムではエントリポイントに相当します。
32+
{{< /note >}}
33+
34+
この演習では、1つのコンテナを実行するPodを作成します。Podの設定ファイルには、コマンドと2つの引数を定義します。
35+
36+
{{% code_sample file="pods/commands.yaml" %}}
37+
38+
1. YAMLの設定ファイルに基づいてPodを作成
39+
40+
```shell
41+
kubectl apply -f https://k8s.io/examples/pods/commands.yaml
42+
```
43+
44+
1. 実行中のPodをリストアップ
45+
46+
```shell
47+
kubectl get pods
48+
```
49+
50+
出力は、command-demo Podで実行されたコンテナが完了したことを示します。
51+
52+
1. コンテナ内で実行されたコマンドの出力を確認するためにPodのログを見る
53+
54+
```shell
55+
kubectl logs command-demo
56+
```
57+
58+
出力は、HOSTNAMEとKUBERNETES_PORT環境変数の値を示します。
59+
60+
```text
61+
command-demo
62+
tcp://10.3.240.1:443
63+
```
64+
65+
## 環境変数を使って引数を定義する
66+
67+
前述の例では、文字列を指定して引数を直接定義しました。文字列を直接指定する代わりに、環境変数を使用して引数を定義することもできます。
68+
69+
70+
```yaml
71+
env:
72+
- name: MESSAGE
73+
value: "hello world"
74+
command: ["/bin/echo"]
75+
args: ["$(MESSAGE)"]
76+
```
77+
78+
つまり、[ConfigMap](/ja/docs/tasks/configure-pod-container/configure-pod-configmap/)や[Secret](/ja/docs/concepts/configuration/secret/)など、環境変数を定義するために利用可能な技術のどれを使っても、Podの引数を定義できるということです。
79+
80+
{{< note >}}
81+
環境変数は`"$(VAR)"`という括弧で囲まれて表示されます。これは、`command`や`args`フィールドで変数を展開するために必要です。
82+
{{< /note >}}
83+
84+
## シェルでコマンドを実行する
85+
86+
シェルでコマンドを実行する必要がある場合もあります。例えば、コマンドが複数のコマンドをパイプでつないだものであったり、シェルスクリプトであったりします。コマンドをシェルで実行するには、次のように記述します。
87+
88+
```shell
89+
command: ["/bin/sh"]
90+
args: ["-c", "while true; do echo hello; sleep 10;done"]
91+
```
92+
93+
## {{% heading "whatsnext" %}}
94+
95+
* [Podとコンテナの設定](/ja/docs/tasks/)についてもっとよく知る
96+
* [コンテナ内でのコマンド実行](/ja/docs/tasks/debug/debug-application/get-shell-running-container/)についてもっとよく知る
97+
* [コンテナのAPI](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#container-v1-core)を確認する

0 commit comments

Comments
 (0)