proxy server๋? ํด๋ผ์ด์ธํธ๊ฐ ์์ ์ ํตํด, ๋ค๋ฅธ ๋คํธ์ํฌ ์๋น์ค์ ์ ์ํ๊ฒ ํด์ค ์ ์๋ ์๋ฒ - Forward Proxy : ํด๋ผ์ด์ธํธ -> proxy server -> ์ธํฐ๋ท -> ์ค์ ์๋ฒ - Reverse Proxy : ํด๋ผ์ด์ธํธ -> ์ธํฐ๋ท(http) reverse proxy server ์ค์ ์๋ฒ (reverse proxy๊ฐ ์ ์ ํ ๋ด๋ถ ์๋ฒ์ ์ ์ํด์ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ์) ๋ก๋ ๋ฐธ๋ฐ์ฑ? -> ์๋ฒ ํ๋์ ํ๋๋ฅผ ๋ ๋์์ ์ ์ํ 10000๊ฑด์ ๊ฐ๊ฐ 5000๊ฑด์ฉ ๋๋ ์ ๋ฐฐ๋ถ ( ์๋ฒ ์ฆ์ค / ํธ๋ํฝ ๊ด๋ฆฌ )
- master ์ปค๋ docker swarm init --advertise-addr ์ ๋ช ๋ น์ด๋ฅผ ํตํด ์ด๊ธฐํ๋ฅผ ํ๋ฉด To add a worker to this swarm, run the following command: docker swarm join -- token ~ ์ด์ ๊ฐ์ด worker๋ฅผ ์์ฑํ๊ธฐ ์ํ ๋ช ๋ น์ด๊ฐ ํจ๊ป ๋ฐ ๊ฒ์ด๋ค. -worker ์ปค๋ ๊ทธ๋ผ ํด๋น ๋ช ๋ น์ด๋ฅผ ๋ณต์ฌํด์ worker๋ก ๋ง๋ค๊ณ ์ ํ๋ ํธ์คํธ์ ๋ถ์ฌ๋ฃ๋๋ค . # ์์ docker swarm join \ --token SWMTKN-1-49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx14ie39trti4wxv-8vxv8rssmk743ojnwacrr2e7c \ 192.168.99.100:2377 ๊ทธ๋ผ ์๋ ๋ช ๋ น์ด๋ฅผ ํต..
๊ฐ์ธ์ ์ผ๋ก ๋ช ๋ น์ด๋ ํ ์ค์ฉ ์ ๋ ฅํ๋ ๊ฒ์ ์ถ์ฒํ๋ค. ํ๋ฒ์ ๋ณต์ฌ ๋ถ์ฌ๋ฃ๊ธฐ๋ฅผ ํ๋ฉด ๋ช ๋ น์ด๊ฐ ์นํ ๊ฐ๋ฅ์ฑ์ด ์๋ค. sudo apt update sudo apt install apt-transport-https ca-certificates curl software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable" sudo apt update apt-cache policy docker-ce sudo apt install..
PVC docker run ์ -v ์ต์ ์ธ ๋์ปค ๋ณผ๋ฅจ๊ณผ ์ ์ฌํ ์ญํ ์ ํ๋ค. PV๋ ๊ด๋ฆฌ์๊ฐ ์์ฑํ ์ค์ ์ ์ฅ ๊ณต๊ฐ์ ์ ๋ณด๋ฅผ ๋ด๊ณ ์๊ณ , PVC๋ ์ฌ์ฉ์๊ฐ ์์ฒญํ ์ ์ฅ ๊ณต๊ฐ์ ์คํ์ ๋ํ ์ ๋ณด๋ฅผ ๋ด๊ณ ์๋ค. --> Pod ๋ด๋ถ์์ ์์ฑํ ๋ฐ์ดํฐ๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ธ์ ๋ ์ง ์ฌ๋ผ์ง ์ ์๊ธฐ ๋๋ฌธ์, ๋ณด์กดํ๊ณ ์ถ๋ค๋ฉด Pod์ PVC๋ฅผ ๋ง์ดํธ ํด์ ์ฌ์ฉํด์ผ ํ๋ค!!! PVC๋ฅผ ์ฌ์ฉํ๋ฉด ์ฌ๋ฌ Pod ๊ฐ์ ๋ฐ์ดํฐ ๊ณต์ ๋ ์ฝ๊ฒ ๊ฐ๋ฅํ๋ค.
Pod(ํ๋)๋ ์ฟ ๋ฒ๋คํฐ์ค์์ ์์ฑํ๊ณ ๊ด๋ฆฌํ ์ ์๋ ๋ฐฐํฌ ๊ฐ๋ฅํ ๊ฐ์ฅ ์์ ์ปดํจํ ๋จ์์ด๋ค. - ํ๋ ํน์ ์ฌ๋ฌ๊ฐ์ ์ปจํ ์ด๋๋ก ์ด๋ฃจ์ด์ ธ์์ ์ ์๋ค. - pod ๋ด๋ถ์ ์ฌ๋ฌ ์ปจํ ์ด๋๋ ์์์ ๊ณต์ ํ๋ค! - statelessํ ํน์ง์ ์ง๋๊ณ ์์ผ๋ฉฐ ์ธ์ ๋ ์ญ์ ๋ ์ ์๋ค. (์ฆ, ์ฟ ๋ฒ๋คํฐ์ค์ ์ด๋ค ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐฐํฌํ๊ณ ์ถ๋ค๋ฉด ์ต์ Pod๋ก ๊ตฌ์ฑํด์ผํ๋ค๋ ์๋ฏธ!) (Pod ์์) ex) pod.yaml apiVersion: v1 # kubernetes resource ์ API Version kind: Pod # kubernetes resource name metadata: # ๋ฉํ๋ฐ์ดํฐ : name, namespace, labels, annotations๋ฑ ํฌํจ name: test spec: # sp..
1. deployment ์์ฑํ๊ธฐ // deployment ์์ฑ kubectl create deployment hello-node --image=k8s.gcr.io/echoserver:1.4 // deployment view kubectl get deployments // pod view kubectl get pods 2. service ์์ฑํ๊ธฐ // create kubectl expose deployment hello-node --type=LoadBalancer --port=8080 // view kubectl get services 3. service ์คํํ๊ธฐ minikube service --url 4. ๋ฆฌ์์ค ์ ๊ฑฐ kubectl delete service hello-node kubectl dele..
https://kubernetes.io/ko/docs/tasks/tools/install-kubectl-macos/ macOS์ kubectl ์ค์น ๋ฐ ์ค์ ์์ํ๊ธฐ ์ ์ ํด๋ฌ์คํฐ์ ๋ง์ด๋(minor) ๋ฒ์ ์ฐจ์ด ๋ด์ ์๋ kubectl ๋ฒ์ ์ ์ฌ์ฉํด์ผ ํ๋ค. ์๋ฅผ ๋ค์ด, v1.23 ํด๋ผ์ด์ธํธ๋ v1.22, v1.23, v1.24์ ์ปจํธ๋กค ํ๋ ์ธ๊ณผ ์ฐ๋๋ ์ ์๋ค. ํธํ๋๋ ์ต์ ๋ฒ์ kubernetes.io ํด๋น ๋งํฌ์ ๋ค์ด๊ฐ ์ด์ฌํ ๋ฐ๋ผ ์น๋ค. ๋ ๊ณต๋ถ๋ฅผ ์์ํ๋ ๋จ๊ณ์ด๊ธฐ ๋๋ฌธ์ ๋ก์ปฌ๊ฐ๋ฐ์ ์ ํฉํ ๋ฐฉ๋ฒ์ ์ฐพ์์ผ ํ๋ค. ํด๋ฌ์คํฐ ํ ๋น์ ์ํ ์ฌ๋ฌ๊ฐ์ง ๋ฐฉ๋ฒ์ด ์๋๋ฐ ๋ํ์ ์ผ๋ก minikube๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ, ๊ทธ๋ฆฌ๊ณ docker-desktop์ ํตํ ๋ฐฉ๋ฒ์ด ์์๋ค. (๋์ ์ฅ๋จ์ ์ ์ฝ๊ฒ ์ค๋ช ํด์ฃผ๋ ๊ธ์ ..
์ฐ์ ์ฐ๋ถํฌ ์ด๋ฏธ์ง๋ฅผ pullํด์จ๋ค. docker pull ubuntu ubuntu ๋ค์ ๋ฒ์ ์ ์ ์ง์์ผ๋ฉด ๊ฐ์ฅ ์ต์ ๋ฒ์ ์ ๋ค์ด๋ฐ์์จ๋ค. ๊ทธ๋ผ ์ด์ pull ํด์จ ์ฐ๋ถํฌ ์ด๋ฏธ์ง๋ก ์ปจํ ์ด๋๋ฅผ ๋ง๋ค์ด์ผ ํ๋ค. docker run -it -d -v "๋ง์ดํธํ๊ณ ์ถ์ ๋ก์ปฌํด๋ ๊ฒฝ๋ก":/home/workspace --name=song2_ubuntu ubuntu -d ์ต์ ์ ๋ฐฑ๊ทธ๋ผ์ด๋๋ก ์คํํ๊ฒ ๋ค๋ ์๋ฏธ์ด๋ค. (๋ณดํต ์ปจํ ์ด๋๋ ๋ฐฑ๊ทธ๋ผ์ด๋๋ก ์คํํ๋ ๊ฒ์ด ์ผ๋ฐ์ ์ด๋ค.) -it ์ต์ ์ -i์ -t ์ต์ ์ ๋ถ์ธ ๊ฒ ์ธ๋ฐ ์ฃผ๋ก ํจ๊ป ์ฌ์ฉํ๋ค. ( ์ปจํ ์ด๋ ์ ๋ ฅ์ ์ด๊ณ ํฐ๋ฏธ๋์ ํ์ค์ ๋ ฅ์ผ๋ก ํ ๋นํ๊ฒ ๋ค๋ ์๋ฏธ ) -v ์ต์ ์ ํธ์คํธ pc ๊ฒฝ๋ก : ๋์ปค ์ปจํ ์ด๋ ์ ๋ ๊ฒฝ๋ก ๋ฅผ ๋ง์ดํธ ํด์ค ๋ ์ฌ์ฉํ๋ฉฐ ์์ ์์์ ๊ฒฝ์ฐ๋ ์ฐ๋ถํฌ..
** ๊ธฐ๋ณธ์ ์ผ๋ก security ์ค์ ๊ณผ swagger ์ค์ ์ด ๋ค ๋์ด์์์ ๋ฐํ์ผ๋ก ํ๋ค. SwaggerConfig.java @Configuration @EnableSwagger2 public class SwaggerConfig { @Bean public Docket api() { return new Docket(DocumentationType.SWAGGER_2) .useDefaultResponseMessages(false) .select() .apis(RequestHandlerSelectors.basePackage("com.cherishpet.backend")) .paths(PathSelectors.ant("/api/**")) .build() .apiInfo(metaData()) .securityCon..
MySQL์ DateTime์ default ๋ก 2022-02-20T00:00:00.000+00:00 ์ผ๋ก ์ค์ ๋์ด์๋ค. INSERT์์ ์ด๋ฅผ YYYY-MM-DD ํฌ๋งท์ผ๋ก ๋ฐ๊ฟ์ฃผ๊ธฐ ์ํด @Temporal(TemporalType.DATE) @DateTimeFormat(pattern = "yyyy-MM-dd") private Date sampleDate; ์ผ๋ก ๋ฐ๊ฟ์ฃผ๋ฉด YYYY-MM-DD ํฌ๋งท์ผ๋ก DB์ ์ ์ฅ๋๋ค.
build.gradle dependencies์ ์ถ๊ฐ dependencies { .. runtimeOnly 'mysql:mysql-connector-java' .. } application.yml datasource: url: jdbc:mysql://{localhost or IP}:{ํฌํธ๋ฒํธ}/{DB๋ช }?serverTimezone=Asia/Seoul username: ์ฌ์ฉ์๋ช password: ๋น๋ฐ๋ฒํธ driver-class-name: com.mysql.cj.jdbc.Driver