✅ Spring Bootに環境変数を登録して使用
AppController
@RestController
public class AppController {
@Value("${MY_ACCOUNT:default}")
private String myAccount;
@Value("${MY_PASSWORD:default}")
private String myPassword;
@GetMapping("/")
public String home() {
return "myAccount: " + myAccount + ", myPassword: " + myPassword;
}
}
プロジェクトの実行確認

Dockerfileの作成
Dockerfile
FROM eclipse-temurin:17-jdk
COPY build/libs/*SNAPSHOT.jar app.jar
ENTRYPOINT ["java", "-jar", "/app.jar"]
Spring Boot プロジェクのビルド
$ ./gradlew clean build
イメージをビルド
$ docker build -t spring-server .
Manifestファイルの作成
spring-deployment.yaml
apiVersion: apps/v1
kind: Deployment
# Deployment の基本情報
metadata:
name: spring-deployment # Deployment の名前
# Deployment の詳細情報
spec:
replicas: 3 # 生成する Pod のレプリカ数
selector:
matchLabels:
app: backend-app # 下記で定義した Pod のうち 'app: backend-app' を持つ Pod を選択
# デプロイする Pod の定義
template:
metadata:
labels:
app: backend-app
spec:
containers:
- name: spring-container
image: spring-server
imagePullPolicy: IfNotPresent
ports:
- containerPort: 8080
env: # 環境変数の登録
- name: MY_ACCOUNT
value: suhwan
- name: MY_PASSWORD
value: pwd1234
spring-service.yaml
apiVersion: v1
kind: Service
metadata:
name: spring-service
spec:
type: NodePort
selector:
app: backend-app
ports:
- protocol: TCP
port: 8080
targetPort: 8080
nodePort: 30000
Manifestファイルを実行
$ kubectl apply -f spring-deployment.yaml
$ kubectl apply -f spring-service.yaml
環境変数が正常に適用されたか確認

Pod 内部に接続して確認する
$ kubectl get pods # Pod 名を確認
$ kubectl exec -it [Pod名] -- bash # Pod 内部に接続
# --- Pod 内部 ---
$ env # 環境変数を照会

'k8s > archive_1' 카테고리의 다른 글
| 12.Secret (0) | 2026.03.18 |
|---|---|
| 11.ConfigMap (0) | 2026.03.18 |
| 9.Service - Spring Bootと通信 (0) | 2026.03.17 |
| 8.serviceとは? (0) | 2026.03.17 |
| 7.Deployment - SpringBoot 3台作成 (0) | 2026.03.17 |