시스템 업데이트

sudo apt update && sudo apt upgrade -y

 

패키지 목록 업데이트 후 curl 설치

sudo apt update && sudo apt install curl -y

 

Docker 설치 스크립트 실행

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

 

현재 사용자를 docker 그룹에 추가 (sudo 없이 사용하기 위함)

sudo usermod -aG docker $USER

 

도커 설치 디렉토리 생성

mkdir ~/my-server
cd ~/my-server
# ~ 는 현재 접속한 계정의 /home/접속계정 경로를 대신하는 명령어

 

도커파일 설정 파일 생성

nano docker-compose.yml

간단한 편집을 위해 vi 사용하지 않고 nano 사용 메모장 처럼 그대로 편집 후

내용 작성 후 ctrl+o (저장) -> 파일명 나오면 enter(확인) -> ctrl+x (종료) 과정으로 간단

services:
  # 데이터베이스: MySQL
  db:
    image: mysql:8.0
    container_name: mysql-container
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: "your_password"  # 원하는 비밀번호로 수정
      MYSQL_DATABASE: my_app_db
    ports:
      - "3306:3306"
    volumes:
      - ./mysql_data:/var/lib/mysql      # 호스트의 폴더와 동기화 (데이터 보존)
    deploy:
      resources:
        limits:
          memory: 1G                     # 사양 고려 메모리 제한

  # 캐시/세션: Redis
  redis:
    image: redis:alpine                  # 가장 가벼운 버전
    container_name: redis-container
    restart: always
    ports:
      - "6379:6379"
    deploy:
      resources:
        limits:
          memory: 512M                   # 사양 고려 메모리 제한

  jenkins:
    image: jenkins/jenkins:lts
    container_name: jenkins-container
    restart: always
    user: root # 도커 권한 사용을 위해 필요합니다
    ports:
      - "8080:8080"   # 웹 UI 접속 포트
      - "50000:50000" # 에이전트 통신 포트
    volumes:
      - ./jenkins_home:/var/jenkins_home
      - /var/run/docker.sock:/var/run/docker.sock # 젠킨스가 도커 명령어를 쓸 수 있게 연결
    deploy:
      resources:
        limits:
          memory: 2G # 사양 고려 메모리 제한

메모리 할당은 서버의 메모리 구성을 기준으로 조정(해당 파일의 내용은 8gb 기준임)

 

컨테이너 백그라운드 실행

docker compose up -d

실행 상태 확인

docker ps
# permission denied while trying to connect to the docker API at unix:///var/run/docker.sock
# 이런 에러나 나온다면 재부팅 하지 않아 사용자 권한이 적용 안되서 그럼
newgrp docker # 설정 바로 적용 위해 명령어 실행

 

docker ps 후 설정한 서비스 목록이 나온다면 설정 완료

반응형

'OS > 리눅스' 카테고리의 다른 글

alias 명령어 별칭 만들기  (0) 2022.03.04
ubuntu docker 설치  (0) 2022.03.02
ubuntu18 doker설치 관련 에러(repository 문제)  (1) 2022.03.02
systemd.timer crontab대체  (0) 2022.02.24
crontab 명령어 실행시 계정 변경  (0) 2017.06.21
Posted by 질주하는구
,

build.gradle 파일 라이브러리 추가

dependencies {
    // Spring Session Redis
    implementation 'org.springframework.session:spring-session-data-redis'
    // Redis Client
    implementation 'org.springframework.boot:spring-boot-starter-data-redis'
}

 

application.yml redis 정보추가

spring:
  data:
    redis:
      host: localhost # 로컬이 아닌 경우 해당 ip
      port: 6379
  
  session:
    store-type: redis # 세션 저장소로 레디스를 사용하겠다는 설정
    redis:
      flush-mode: on_save
      namespace: spring:session # Redis 내부에서 세션 키를 구분하는 접두사
    timeout: 1800 # 세션 만료 시간 (30분)

 

SessionConfig 세션 관련 설정 파일 추가

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.RedisSerializer;
import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;

@Configuration
@EnableRedisHttpSession // Redis 세션 저장 활성화
public class SessionConfig {

  /** Redis에 세션 정보를 JSON 형태로 저장하기 위한 설정(이 설정이 없으면 Redis에서 세션 값이 깨진 것처럼 보임). */
  @Bean
  public RedisSerializer<Object> springSessionDefaultRedisSerializer() {
	  // GenericJackson2JsonRedisSerializer 사용 json 형태
    return new GenericJackson2JsonRedisSerializer();
  }
}

 

세션 저장할 dto는 아래의 조건을 기본으로 충족해야 합니다.
1. 기본 생성자(Default Constructor)가 있어야 합니다. (JSON을 다시 객체로 바꿀 때 필요)
2. Serializable 인터페이스를 구현하지 않아도 JSON 방식에서는 잘 돌아가지만, 관례상 붙여두는 경우가 많습니다.

반응형
Posted by 질주하는구
,

이번에 입주하는 아파트 평수가 작은 평수여서 안방도 아주 협소 합니다.

협소 한 안방을 효율적으로 사용하기 위해 안방 붙박이장을 침대 프레임이 들어갈 수 있는 공간을 만드는 형식으로 작업 하려고 했습니다.

 

해당 시공의 경우 일반 붙박이장에 비해 업체가 많지 않습니다. 붙박이장 작업을 하는 곳은 모두 가능 하겠지만 수요가 많지 않아 침대 붙박이장을 전면에 내새워 영업 하는 경우가 없어 그런거 같습니다.

 

인테넷 상의 여러 업체를 확인 해보니 3M 기준 170~190만원 정도의 견적이 나오는걸 확인 할 수 있었습니다.

다른 분들 후기에 이렇게 범용적이지 않은 경우 오히려 한샘등의 브랜드가 더 저렴 하다는 이야기가 있어 견적을 내보니

 

위의 이미지 같은 이불이 수납 가능한 장과 침대가 들어갈 공간의 상부장 기준으로 가격을 산출 했을때 198만원 정도의 가격이 나왔습니다.

https://remodeling.hanssem.com/goods/636997

 

[침실] 침대장(Q사이즈)

공간을 알차게 활용하는 침대장

remodeling.hanssem.com

나쁘지 않은 가격인거 같아 계약 진행 했습니다.

반응형

'우리가족' 카테고리의 다른 글

신일 스포츠 센터 아기 수영장  (0) 2023.08.15
생일 기념 사진 촬영!  (0) 2022.06.12
이야기모바일 20GB 태블릿 요금제 사용  (0) 2021.06.23
무선 이어폰 ez03  (0) 2020.05.15
공기청정기  (0) 2017.08.14
Posted by 질주하는구
,