aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCharles Cabergs <me@cacharle.xyz>2020-10-16 18:28:59 +0200
committerCharles Cabergs <me@cacharle.xyz>2020-10-16 18:28:59 +0200
commit0d4b173a0d681d34a1212aaee4851a19ebdb8851 (patch)
tree7f4d8f4496b03c712baaebf02c13ddc38f3002cd
parent5c511bc0d64c09b0c3e3f0f97214e34b93b564e7 (diff)
downloadft_services-0d4b173a0d681d34a1212aaee4851a19ebdb8851.tar.gz
ft_services-0d4b173a0d681d34a1212aaee4851a19ebdb8851.tar.bz2
ft_services-0d4b173a0d681d34a1212aaee4851a19ebdb8851.zip
Added service and deployment for nginx and ftps
-rwxr-xr-xsetup.sh30
-rw-r--r--srcs/ftps/ftps.yaml43
-rw-r--r--srcs/mysql/Dockerfile2
-rwxr-xr-xsrcs/mysql/src/entrypoint.sh24
-rw-r--r--srcs/nginx/nginx.yaml48
-rw-r--r--srcs/phpmyadmin/Dockerfile10
-rw-r--r--srcs/wordpress/Dockerfile10
-rw-r--r--subject.pdfbin1293778 -> 1330056 bytes
8 files changed, 137 insertions, 30 deletions
diff --git a/setup.sh b/setup.sh
index 09b7c07..4d2a5d7 100755
--- a/setup.sh
+++ b/setup.sh
@@ -1,12 +1,22 @@
#!/bin/sh
-if ! [ -x `command -v docker` ]; then
- echo "Error: docker is not installed"
- exit 1
-elif ! [ -x `command -v docker-compose` ]; then
- echo "Error: docker-compose is not installed"
- exit 1
-fi
-
-cd ./srcs
-docker-compose --project-name ft_services up
+names='
+ftps
+'
+
+# nginx
+# wordpress
+# phpmyadmin
+
+echo 'Building docker images'
+echo "$names" | xargs -Iname docker build -t cacharle-name srcs/name
+
+minikube start
+
+eval $(minikube docker-env)
+
+echo 'Creating cluster'
+echo "$names" | xargs -Iname kubectl apply -f srcs/name/name.yaml
+
+
+minikube dashboard
diff --git a/srcs/ftps/ftps.yaml b/srcs/ftps/ftps.yaml
new file mode 100644
index 0000000..03a8b97
--- /dev/null
+++ b/srcs/ftps/ftps.yaml
@@ -0,0 +1,43 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: ftps-deployment
+ labels:
+ app: ftps
+spec:
+ selector:
+ matchLabels:
+ app: ftps
+ replicas: 1
+ template:
+ metadata:
+ labels:
+ app: ftps
+ spec:
+ containers:
+ - image: cacharle-ftps
+ imagePullPolicy: Never
+ name: cacharle-ftps-container
+ ports:
+ - containerPort: 21
+ hostPort: 9021 # change me
+ - containerPort: 21000
+ hostPort: 21000
+
+---
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: ftps-service
+spec:
+ type: LoadBalancer
+ ports:
+ - name: ftps
+ targetPort: 21
+ port: 9021
+ - name: passive1
+ targetPort: 21000
+ port: 21000
+ selector:
+ app: ftps
diff --git a/srcs/mysql/Dockerfile b/srcs/mysql/Dockerfile
index 393e0ac..0f6a2e7 100644
--- a/srcs/mysql/Dockerfile
+++ b/srcs/mysql/Dockerfile
@@ -2,7 +2,7 @@ FROM alpine
RUN apk update && \
apk upgrade && \
- apk add mysql mysql-client
+ apk add mysql mysql-client --no-cache
COPY ./src /root
diff --git a/srcs/mysql/src/entrypoint.sh b/srcs/mysql/src/entrypoint.sh
index af327f7..67f705b 100755
--- a/srcs/mysql/src/entrypoint.sh
+++ b/srcs/mysql/src/entrypoint.sh
@@ -1,18 +1,20 @@
#!/bin/sh
-# addgroup mysql mysql
-#
-# MYSQLD_DIR=/run/mysqld
-#
-# mkdir $MYSQLD_DIR
-# chown mysql:mysql $MYSQL_DIR
+mkdir -vp /run/mysqld
-mysql -u root --skip-password <<EOF
+echo -e 'asdfasdf123\nasdfasdf123\n' | adduser cacharle
+
+mysql_install_db --user=cacharle
+
+/usr/bin/mysqld --user=cacharle --skip-password --bootstrap <<EOF
CREATE DATABASE wordpressdb;
-CREATE USER 'wordpressuser'@'localhost' IDENTIFIED BY 'wordpresspass';
-GRANT ALL PRIVILEGES ON wordpressdb.* TO 'wordpressuser'@'localhost';
-IDENTIFIED BY 'wordpresspass';
+CREATE USER 'cacharle'@'localhost' IDENTIFIED BY 'pass';
+GRANT ALL PRIVILEGES ON wordpressdb.* TO 'cacharle'@'localhost';
+IDENTIFIED BY 'pass';
FLUSH PRIVILEGES;
EOF
-mysql
+# until mysql; do
+# sleep 5
+
+/usr/bin/mysqld --user=cacharle
diff --git a/srcs/nginx/nginx.yaml b/srcs/nginx/nginx.yaml
new file mode 100644
index 0000000..3fb1492
--- /dev/null
+++ b/srcs/nginx/nginx.yaml
@@ -0,0 +1,48 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: nginx-deployment
+ labels:
+ app: nginx
+spec:
+ selector:
+ matchLabels:
+ app: nginx
+ replicas: 1
+ template:
+ metadata:
+ labels:
+ app: nginx
+ spec:
+ containers:
+ - image: cacharle-nginx
+ imagePullPolicy: Never
+ name: cacharle-nginx-container
+ ports:
+ - containerPort: 80
+ hostPort: 9080
+ - containerPort: 443
+ hostPort: 9443
+ - containerPort: 22
+ hostPort: 9022
+
+---
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: nginx-service
+spec:
+ type: LoadBalancer
+ ports:
+ - name: http
+ port: 9080
+ targetPort: 80
+ - name: https
+ port: 9443
+ targetPort: 443
+ - name: ssh
+ port: 9022
+ targetPort: 22
+ selector:
+ app: nginx
diff --git a/srcs/phpmyadmin/Dockerfile b/srcs/phpmyadmin/Dockerfile
index 9b813b8..4e1c166 100644
--- a/srcs/phpmyadmin/Dockerfile
+++ b/srcs/phpmyadmin/Dockerfile
@@ -2,11 +2,13 @@ FROM alpine
RUN apk update && \
apk upgrade && \
- apk add php7 php7-fpm php7-opcache php7-gd php7-mysqli php7-zlib php7-curl php7-mbstring php7-json php7-session curl && \
- curl https://files.phpmyadmin.net/phpMyAdmin/5.0.2/phpMyAdmin-5.0.2-all-languages.zip > phpmyadmin.zip && \
+ apk add php7 php7-fpm php7-opcache php7-gd php7-mysqli php7-zlib \
+ php7-curl php7-mbstring php7-json php7-session curl
+
+RUN curl 'https://files.phpmyadmin.net/phpMyAdmin/5.0.2/phpMyAdmin-5.0.2-all-languages.zip' > phpmyadmin.zip && \
unzip phpmyadmin.zip && \
- mv phpMyAdmin-5.0.2-all-languages www
+ mv 'phpMyAdmin-5.0.2-all-languages' /var/www
EXPOSE 5000
-CMD ["php", "-S", "0.0.0.0:5000", "-t", "/www"]
+CMD ["php", "-S", "0.0.0.0:5000", "-t", "/var/www"]
diff --git a/srcs/wordpress/Dockerfile b/srcs/wordpress/Dockerfile
index 76d5d56..0b21c62 100644
--- a/srcs/wordpress/Dockerfile
+++ b/srcs/wordpress/Dockerfile
@@ -2,11 +2,13 @@ FROM alpine
RUN apk update && \
apk upgrade && \
- apk add php7 php7-fpm php7-opcache php7-gd php7-mysqli php7-zlib php7-curl php7-mbstring php7-json php7-session curl && \
- curl https://wordpress.org/latest.tar.gz > wordpress.tar.gz && \
+ apk add php7 php7-fpm php7-opcache php7-gd php7-mysqli \
+ php7-zlib php7-curl php7-mbstring php7-json php7-session curl
+
+RUN curl 'https://wordpress.org/wordpress-5.5.1.tar.gz' > wordpress.tar.gz && \
tar xf wordpress.tar.gz && \
- mv wordpress www
+ mv wordpress /var/www
EXPOSE 5050
-CMD ["php", "-S", "0.0.0.0:5050", "-t", "/www"]
+CMD ["php", "-S", "0.0.0.0:5050", "-t", "/var/www"]
diff --git a/subject.pdf b/subject.pdf
index 75e6e36..a988fda 100644
--- a/subject.pdf
+++ b/subject.pdf
Binary files differ