본문 바로가기

전체 글

(234)
[Docker 기본] ENTRYPOINT: 컨테이너가 시작할 때 실행되는 명령어 ENTRYPOINT컨테이너가 생성되고 최초로 실행될 때 수행되는 명령어.미니 컴퓨터의 전원을 키고나서 실행시키고 싶은 명령어를 적으면 된다.  사용법ENTRYPOINT [명령문..]  예제ENTRYPOINT [명령문..] 1. hello를 출력하는 명령문 작성FROM ubuntuENTRYPOINT [ "/bin/bash", "-c", "echo hello" ] 2. 빌드, 실행docker build -t my-server .docker run -d my-server 3. sleep을 주지 않았으므로 중단된 컨테이너를 조회해보자.docker ps -a 4. 로그 조회 docker logs fc8  * Inflearn(인프런) ‘비전공자도 이해할 수 있는 Docker 입문/실전’ 강의 참고
[Docker 기본] COPY: 파일 복사(이동) COPY: 파일 복사(이동)COPY는 호스트 컴퓨터에 있는 파일을 복사해서 컨테이너로 전달하는 기능이다.  사용법copy [호스트 컴퓨터에 있는 복사할 파일의 경로] [컨테이너에서 파일이 위치할 경로] 1. app.txt 파일을 만든다.2. Dockerfile에는 다음과 같이 입력하자.FROM ubuntuCOPY app.txt /app.txtENTRYPOINT [ "/bin/bash", "-c", "sleep 500" ] => 앞의 app.txt 는 호스트 컴퓨터의 상대경로 / 뒤에 app.txt는 절대경로  3. 빌드docker build -t my-server . 4. 실행docker run -d my-server 5. 파일이 생성됐는지 확인docker exec -it 914 bash 6. 파일 내용..
[Docker 기본] 종료된 컨테이너에 들어가서 디버깅하고 싶을 때 종료된 컨테이너에 들어가서 디버깅하고 싶을 때ENTRYPOINT ["/bin/bash", "-c", "sleep 500"] => 500초 동안 시스템을 일시정지 시키는 명령어  * Inflearn(인프런) ‘비전공자도 이해할 수 있는 Docker 입문/실전’ 강의 참고
[Java 기본] 기본형과 참조형 기본형 vs 참조형변수의 데이터타입은 크게 기본형과 참조형으로 분류할 수 있다. 기본형 : 사용하는 값을 변수에 저장          int, long, double, doolean참조형 : 객체가 저장된 메모리의 위치를 가르키는 참조값(위치, 주소)을 변수에 저장.           객체, 배열.. * 참고 : String은 클래스라서 참조형이다. 하지만 문자형은 자주 다루기 때문에 자바에서 특별하게 편의기능을 제공한다. 따라서 기본형처럼 직접 문자값을 바로 대입한다.   기본형, 참조형의 변수대입대원칙 : 자바는 항상 변수의 값을 복사해서 대입한다.  기본형 대입int a = 0;int b = a;이 코드에서 2번 라인은 a를 b에 넣어주는 것이 아니다. a의 값을 복사해서 b에 넣어주는 것이다.  ..
[Java 기본] 배열 배열 도입클래스를 사용하여 학생 데이터를 구조적으로 이해하기 쉽게 변경할 수 있었다.  System.out.println("이름:" + student1.name + " 나이: " + student1.age + " 성적: " + student1.grade); System.out.println("이름:" + student2.name + " 나이: " + student2.age + " 성적: " + student2.grade); 하지만 코드를 보면 데이터를 출력하는 부분이 반복적으로 쓰이고 있다. 학생이 추가되면 코드도 늘어날 것이다. 배열을 사용하여 이 코드를 개선해보자.  배열을 사용한 코드  public class ClassStart4 { public static void ..
[Java 기본] 클래스, 객체, 인스턴스 클래스(Class)객체를 생성하기 위한 설계도객체가 가져야할 속성(변수)와 기능(메서드)를 정의한다.클래스를 통해 객체를 생성할 뿐 클래스 자체가 객체는 아니다. 객체(Object)클래스에서 정의한 속성과 기능을 가진 실체 student1 = new Student(); // 학생을 실제 메모리에 만든다. student1.name = "학생1"; student1.age = 14; student1.grade = 90; Student student2 = new Student(); student2.name = "학생2"; student2.age = 15; student2.grade = 80;같은 객체를 통해 생성..
[Java 기본] 클래스 클래스가 필요한 이유클래스가 왜 필요할까? 다음 예제를 보면서 클래스가 필요한 이유에 대해서 학습해보자.  학생1,2의 정보를 입력한 후 print 해보자.public class ClassStart1 { public static void main(String[] args) { String student1Name = "학생1"; int student1Age = 15; int stdent1Grade = 90; String student2Name = "학생2"; int student2Age = 16; int stdent2Grade = 80; System.out.println("이름:" + student1Name + "..
[Docker 실습] FROM: 베이스 이미지 생성 FROM: 베이스 이미지 생성1. 연습용 폴더를 생성한 후에 폴더에 파일을 만들어 보자.mkdir docker-practice나는 vscode로 파일을 생성했다. 이 때 파일명은 Dockerfile로 한다. 2. 파일을 작성해보자. => 나는 어떤 컨테이너가 띄워졌을 때 컨테이너 환경에 jdk17이 깔려있었으면 좋겠어 3. 이미지를 만들어보자.  vscode 터미널에 아래 명령어를 입력해보자. 이 때 마지막에 상대경로를 입력해야한다. docker build -t my-jdk17-server . 4. 빌드가 잘 됐는지 확인이미지가 생성되었다. 5. 태그명을 입력할 수도 있다.docker build -t my-jdk17-server:beta태그명을 beta로 입력했다. 정상적으로 이미지가 생성된 것을 확인할..