라벨이 우분투인 게시물 표시

Docker Network

이미지
네트워크 드라이버 bridge host none container overlay 아무런 설정을 하지 않고 컨테이너를 생성할 경우 기본적으로 docker0 bridge 사용한다. veth 인터페이스는 각 Container 마다 생성된다. docker0 인터페이스와 Binding 되어 호스트의 eh0 인터페이스와 이어지며 외부와 통신이 가능하게 된다. Bridge Network docker network ls 명령어와 docker network inspect bridge 명렁어를 통해서 확인하기 Gateway 와 Subnet 을 확인할 수 있다. 그렇다면, docker network create --driver bridge {name} 명령어를 통해서 사용자 정의 브리지를 생성하고 적용해보자. 기본 bridge 와는 다르게 172.18.x.x 대역으로 Gateway 와 Subnet 이 잡혀있다. 사용자 정의 브리지를 통해서 컨테이너를 생성해보자. docker run -it 옵션을 통해서 생성한 컨테이너에 attach 모드로 들어간다. --net 옵션을 통해서 사용자 정의 브리지를 설정한다. 생성한 ubuntu 컨테이너안에서 ifconfig 명령어를 통해서 172.18.0.2 를 할당받은 것을 확인할 수 있다. 또한 임의로 Subnet, Gateway, Ip range 를 아래와 같이 설정할 수 있다. --subnet 옵션과 --ip-range 옵션 그리고 --gateway 옵션을 통해서 가능하다. --net-alias 옵션을 통해서 사용자 정의 브리지에 별칭을 부여할 수 있다. ip 할당은 라운드 로빈방식이다. 각각의 컨테이너에 172.18.0.2 ~ 4 까지 할당한 것을 확인할 수 있다. Host Network 호스트 네트워크 환경을 컨테이너에서 동일하게 사용한다. 컨테이너 내부의 Application 을 별도의 port forwarding 없이 바로 서비스가 가능하다. None Network 아무런 네트워크도 사용하지 않는 것. 컨테이너 외부와...

Github Actions 로 AWS ECS deployment

이미지
Github Actions 을 이용해서 spring boot 프로젝트를 Docker , ECR, ECS 를 이용해서 배포하는 과정을 블로깅 하려고 한다. Github repository 랑 AWS 계정은 다 있다는 전제하에 진행 한다. aws cli 를 사용해도 되는데 제일 쉽게 console 을 이용한 가내수공업을 해보려고 한다. 우선 ECS cluster 를 먼저 생성한다. 파란색 버튼 눌러! 깜빡하고 언급 안했는데, fargate 를 사용할 것이다. fargate 에 대한 설명은 aws 들어가서 참고 하세요. https://aws.amazon.com/ko/fargate/ 클러스터 이름은 알아서 기입해주고, VPC 는 체크해주면 알아서 생성 해준다. 혹은 체크하지 않고 AWS default VPC 를 사용해도 된다. 혹은 VPC 를 스스로 생성해서 사용해도 된다. 그리고 CloudWatch 컨테이너 인사이트 활성화는 꼭 체크해주자, CloudWatch 를 이용해서 로그를 볼 수 있어서 유용하다. 다음에 해주어야 할 것이! 바로 작업 정의 ! task-definition 생성이다. 시퍼런 버튼 눌러서 생성해 주면 된다. 역시 또한 fargate 를 사용할 것이다. 작업 정의 이름은 알아서 기입해주고, 작업 역할과 작업 실행 IAM 역할이 가장 중요하다. AmazonECSTaskExecutionRolePolicy 와 관련된 내용인데, 이 정도만 언급하고 생략하겠다. 컨테이너 정의에서 컨테이너 추가 버튼을 눌러서, 사전에 ECR 에 등록된 이미지를 세팅 해 준다. 작업 메모리 및 작업 CPU 도 알맞게 설정 한다. 컨테이너 이름은 알아서 기입해주고, 이미지는 ECR 이미지 URL 을 넣어준다. 그 다음은 처음에 생성한 클러스터에 들어가서 서비스를 생성 해 준다. 역시 fargate를 이용할 것이다. 배포는 롤링 업데이트로 설정한다. 블루 그린 배...

Nano 에디터 복붙과 잘붙 단축키

Ubuntu 환경에서 c언어 공부하면서 nano에디터로 코드를 작성하고, gcc로 컴파일하고 돌려보고 하는데, 실용적으로 에디터를 사용하기 위해서 복사하고 붙여넣기를 가끔씩 까먹어서 구글링하고 다시 기억하고 해서 이번에 한번 nano에디터 단축키를 정리해보려고 한다..!!  먼저 복사하려면 구간선택을 해야한다. 구간선택 시작부분에 커서를 두고 CTRL + 6 그리고 구간선택 끝부분에 커서를 두고 ALT + 6 그리고 나서 붙여넣기를 하고 싶은 곳에가서 커서를 두고 CTRL + u 를 하면 된다! 구간선택을 하지않고 그냥 한줄 전체를 복사하고 싶을 경우 ALT + 6 그리고 빈줄로 커서를 두고 CTRL + u 를 하면 된다! 복붙 말고 잘라내기 붙여넣기는 구간선택이 없는 것 같다.. 한 줄 단위로 잘라낼 수 있다.   CTRL + k 붙여넣기를 하고 싶은 라인에 가서 CTRL + u 를 하면 된다! 나머지 종료하고 저장하고 하는 것은 너무 간단해서 생략하겠다. 이상 허접의 기록

Ubuntu에서 그림판이 필요해!

이미지
우분투에서 이미지편집기가 뭐가 있을라나 해서 구글링해보니 Kolourpaint 라는게 많이 떠있어서 한 번 설치해보았다. 설치는 아래처럼 간단하게 터미널에서, 사뿐히 sudo apt-get install kolourpaint4 본인은 미리 설치를 해두어서 아래처럼 떴다. 아래는 설치되고 나서 실행해보았다, 그리고 원하는 구역만 잘라내서 작업한다거나 정말 간단한 작업하려고 설치해보았다. 이상..

Ubuntu terminal에서 nano editor로 gcc사용해서 c 언어 코딩

이미지
먼저, gcc 설치 되어있는지 확인 설치되어 있지 않다면, sudo apt-get install gcc 를 고고싱 nano test.c 해주고 아래처럼 기본적인 헬로월드를 다섯번 찍는 코드를 넣어준다. cat test.c 로 코드가 제대로 들어갔나 확인함 해주고, gcc test.c -o output 명령어 쳐주고 ls 로 확인해보면 output이 생겼네? > < ! ./output 으로 실행 해주면 헬로월드 다섯번 찍히는거 확인된다. 이상 허접한 블로깅 완료

ubuntu에서 mysql timezone 설정 Asia/Seoul 로~~~~~~

구글 클라우드 플랫폼을 이용해서 ubuntu 16.04 lts에 mysql 을 설치해서 사용하는데 시간이 자꾸 한국시간보다 -9시간 되서 뜨는 문제가 발생했다. 구글링을 해보니 timezone을 바꾸라는데... set time_zone='Asia/Souel'; 뭐 이렇게 해주라는데,,, ERROR 1298 (HY000): Unknown or incorrect time zone: 'Asia/Souel' 이런 에러가 날아온다. 뭐지?? 하고 구글링을 더했다. 아래와 같이 여기서  https://www.linux.co.kr/home2/board/subbs/board.php?bo_table=lecture&wr_id=1654  해주라고 하는데,, 이방법도 안통한다.. 2. time_zone 변경시 확인사항 타임존설정 변경이 가능한 경우 mysql> use mysql Database changed mysql> select * from time_zone_name where name='KST'; +------+--------------+ | Name | Time_zone_id | +------+--------------+ | KST | 1652 | +------+--------------+ 1 row in set (0.00 sec) 타임존설정 변경이 불가능한 경우 mysql> use mysql Database changed mysql> select * from time_zone_name where name='KST'; Empty set (0.00 sec) 타임존설정 변경이 불가능한 경우라도 time_zone 데이타베이스 구축하면 타임존설정 변경이 가능해진다. 3. time_zone 데이타베이스 구축 호스트 머신의 time_zone 데이타를 mysql에서 사용가능한 데이타로 컨버팅하기 위해서는 mysql_tzinfo_to...

ubuntu mysql 한글 ???? 물을표로 나와서 빡칠 때

이미지
my.cnf 켜준다. 아래처럼 #client, #mysqld, #mysqldump, #mysql 부분추가 재시작! 설정 바뀐거 확인! 설정바뀐거 확인! 2 끝

우분투 16.04 lts Rstudio 설치

간단하게 R부터 설치 $ sudo apt-get update $ sudo apt-get install r-base Rstudio 설치 sudo apt-get install gdebi-core sudo apt-get install libapparmor1 wget https://download1.rstudio.org/rstudio-0.99.896-amd64.deb sudo gdebi -n rstudio-0.99.896-amd64.deb

우분투에서 APM(apache2 + php + mysql) 서버 구축과 XE 익스프레스엔진 설치

먼저  APM 설치 apache 설치 $apt-get install apache2 mysql 설치 $apt-get install mysql-server mysql-client ->root 유저 password 를 설정하라고 화면이 뜬다. php 설치 $apt-get install php libapache2-mod-php php-xml php-gd php-mysql  apache, mysql 확인 $netstat -atp | grep apache2 $netstat -atp | grep mysqld 참고 사항 : 아파치 기본 경로는  /var/www/html 으로 자동 설정되어있다.                    경로를 수정하기 위해서는 /etc/apache2/sites-available/000-default.conf 에서                     DocumentRoot /var/www/html 부분을 찾아서 원하는 경로로 바꿀 수 있다.                   설정을 적용시키기 위해 아파치 서버를 재시작                    $ service apache2 restart     ...

efi모드 윈도우 10 과 우분투 16.04 듀얼부팅 삽질기

이미지
2개 이상 OS를 사용하기 위해서는 공통적으로 이러한 작업들을 거치더라. 메인보드마다, 제조회사마다 안전부트와 부팅 우선순위 정하는것이 약간식의 다른점은 있지만 거의 큰차이가 없다. 내 노트북은 ACER회사의 Aspire V5-591G이다. 나는 밑에 이러한 과정을 거쳤다. 세부사항은 생략했다. 1. 윈도우10에서 빠른 시작 켜기 해제 2. BIOS설정에서 1)secure boot - disabled                       2)boot menu - enabled 3. 윈도우 파티션 나누기 - 우분투 설치할 파티션    - 여기서 굳이 안하고 우분투 설치과정에서 해도 되지만.. 디스크 0은 윈도우10이 설치되어 있다 디스크 1에는 D드라이버 256GB는 윈도우에 할당, 37.25GB               / 37.25GB        /home  14.90GB           swap 120.35는 유동적으로 우분투나 윈도우에 할당 할 수 있도록 남겨둔 상태이다. 4. rufus로 부팅 usb 만들기 5. 우분투 설치 6. 재부팅 -> grup화면에서  OS선택가능 -> 성공!!! 구글링하다보면 여기까지는 모두 똑같다. 큰 차이점이 없다. 우분투만 설치하고 재부팅하면 바로 window 10을 선택 할 지 우분투를 선택 할 것이냐고 묻는 grub화면이 뜬다고 한다. 하지만 나같은 경우는 곧바로 윈도우로 부팅되어 버리는 현상이 발생했다. 이때부터 나는 며칠동안 삽질을 한다. 처음에는 'BIOS 설정에서 부팅 우선순위가 잘못되서 grub이 안뜨나?'라고 생각해서 Priority를 ...