Skip to content

Commit ef7e290

Browse files
cmyuiclaude
andcommitted
Add phpMyAdmin deployment manifest
- Use official phpmyadmin/phpmyadmin image (bitnami is now paid) - Configure MySQL host to VPC internal IP (10.118.0.4) - Allow arbitrary server connections for flexibility Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1 parent d440391 commit ef7e290

File tree

2 files changed

+97
-0
lines changed

2 files changed

+97
-0
lines changed

k8s/phpmyadmin/README.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# phpMyAdmin
2+
3+
Simple phpMyAdmin deployment using the official image.
4+
5+
## Deploy
6+
7+
```bash
8+
kubectl apply -f k8s/phpmyadmin/deployment.yaml
9+
```
10+
11+
## Configuration
12+
13+
Environment variables in `deployment.yaml`:
14+
- `PMA_HOST`: MySQL server address (VPC internal IP: 10.118.0.4)
15+
- `PMA_PORT`: MySQL port (3306)
16+
- `PMA_ARBITRARY`: Allow connecting to any MySQL server (1 = enabled)
17+
18+
## Access
19+
20+
phpMyAdmin is exposed via the k8s-rev-proxy nginx configuration.
21+
22+
For local access via port-forward:
23+
```bash
24+
kubectl port-forward svc/phpmyadmin 8080:80
25+
```
26+
Then open http://localhost:8080
27+
28+
## Notes
29+
30+
Previously used Bitnami Helm chart, but Bitnami moved to paid subscriptions
31+
in August 2025. Migrated to official `phpmyadmin/phpmyadmin` image.

k8s/phpmyadmin/deployment.yaml

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: phpmyadmin
5+
namespace: default
6+
labels:
7+
app: phpmyadmin
8+
spec:
9+
replicas: 1
10+
selector:
11+
matchLabels:
12+
app: phpmyadmin
13+
template:
14+
metadata:
15+
labels:
16+
app: phpmyadmin
17+
spec:
18+
containers:
19+
- name: phpmyadmin
20+
image: phpmyadmin/phpmyadmin:latest
21+
ports:
22+
- containerPort: 80
23+
name: http
24+
env:
25+
- name: PMA_HOST
26+
value: "10.118.0.4"
27+
- name: PMA_PORT
28+
value: "3306"
29+
- name: PMA_ARBITRARY
30+
value: "1"
31+
resources:
32+
requests:
33+
cpu: 100m
34+
memory: 128Mi
35+
limits:
36+
cpu: 250m
37+
memory: 256Mi
38+
livenessProbe:
39+
httpGet:
40+
path: /
41+
port: 80
42+
initialDelaySeconds: 30
43+
periodSeconds: 10
44+
readinessProbe:
45+
httpGet:
46+
path: /
47+
port: 80
48+
initialDelaySeconds: 5
49+
periodSeconds: 5
50+
---
51+
apiVersion: v1
52+
kind: Service
53+
metadata:
54+
name: phpmyadmin
55+
namespace: default
56+
labels:
57+
app: phpmyadmin
58+
spec:
59+
type: ClusterIP
60+
ports:
61+
- port: 80
62+
targetPort: 80
63+
protocol: TCP
64+
name: http
65+
selector:
66+
app: phpmyadmin

0 commit comments

Comments
 (0)