본문 바로가기

전체 글124

Docker 도커 볼륨 도커 이미지로 컨테이너를 생성하면 이미지는 읽기 전용이 되며 컨테이너의 변경 사항만 별도로 저장해서 각 컨테이너의 정보를 보존한다. 즉, 다음과 같은 구조를 가진다. 이미지에 mysql을 실행하는 데 필요한 애플리케이션 파일이 들어있다면 컨테이너 계층에는 워드프레스에서 쓴 로그인 정보나 게시글 등과 같이 데이터베이스를 운용하면서 쌓이는 데이터가 저장된다. 여기에는 치명적인 단점이 있는데 mysql 컨테이너를 삭제하면 컨테이너 계층에 저장돼있던 데이터베이스의 정보도 삭제된다는 점이다. 도커의 컨테이너는 생성과 삭제가 매우 쉬우므로 실수로 컨테이너를 삭제하면 데이터를 복구할 수 없게 된다. 이를 방지하기 위해 컨테이너의 데이터를 영속적 데이터로 활용할 수 있는 방법이 몇 가지 있는데 볼륨이 그 방법중 하나이.. 2023. 9. 2.
Docker 컨테이너 애플리케이션 구축 서비스를 컨테이너화(Containerize)할 때 여러개의 애플리케이션을 한 컨테이너에 설치할 수도 있다. 그러나 컨테이너에 애플리케이션을 하나만 동작시키면 컨테이너 간의 독립성을 보장함과 동시에 애플리케이션의 버전관리, 소스코드 모듈화 등이 더욱 쉬워진다. 웹 서버와 그에 필요한 데이터베이스를 예로 들어보겠다. 다음 명령어를 입력해 각 컨테이너를 생성한다. # docker run -d --name wordpressdb -e MYSQL_ROOT_PASSWORD=password -e MYSQL_DATABASE=wordpress mysql:5.7 # docker run -d -e WORDPRESS_DB_PASSWORD=password -e WORDPRESS_DB_USER=root --name wordpres.. 2023. 9. 2.
[백준 9095] [JAVA] 1, 2, 3 더하기 9095번: 1, 2, 3 더하기 각 테스트 케이스마다, n을 1, 2, 3의 합으로 나타내는 방법의 수를 출력한다. www.acmicpc.net 문제 풀이 dp[i] = i를 정수 1, 2, 3의 합으로 표현할 수 있는 방법의 수 초기값은 dp[1] = 1 dp[2] = 2 dp[3] = 4 이다. 4는 (1+1+1+1), (1+1+2), (1+2+1), (2+1+1), (1+3), (3+1), (2+2)로 표현이 가능하다. 여기서 (1+3), (3+1), (2+2) 해당 부분을 눈여겨 보자 3을 정수 1, 2, 3의 합으로 나타내는 방법의 수는 dp[3], 2는 dp[2], 1은 dp[1]이다. 이렇게 문제를 작게 쪼개는게 가능해진다. 이를 사용해서 점화식을 세워보면 dp[i] = dp[i-1] + .. 2023. 8. 29.
[백준 1463] [JAVA] 1로 만들기 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 문제 풀이 정수 X에 사용할 수 있는 연산은 다음과 같이 세 가지 이다. X가 3으로 나누어 떨어지면, 3으로 나눈다. X가 2로 나누어 떨어지면, 2로 나눈다. 1을 뺀다. dp[x] = x를 1로 만드는 최소 연산 횟수 이를 점화식으로 표현 해보면 아래의 식이 나온다. dp[x] = dp[x/3] + 1 dp[x] = dp[x/2] + 1 dp[x] = dp[x-1] + 1 초기값은 dp[0] = dp[1] = 0이다. 반복문은 2부터 시작하며 우선 1을 뺀 연산 횟수를 구하고, 3을 나눈 연산 횟수와 위에서 구한 1을 뺀 연산 횟수 중 최솟값을 dp[i]에 저장을 한 다.. 2023. 8. 29.