10/28 수업 내용

Ahn·2021년 10월 28일
0

recursive force (rf) 강제로 순회하면서

SSH에서 node_modules를 삭제해 보았다.

근데 전혀 상관 없다.

Docker에 node 16버전이 깔려있었고, yarn install을 하면
다시 노드버전에 맞는 node_modules가 생김

docker , docker-compose만 다운 받으면 됨


node_modules를 지우고 나서
$ docker ps를 하면 이런 밑에 있는 에러가 남
그러면서 뭘 깔라고 설명함

$ sudo apt install docker.io 로 깔고

sudo를 붙여서 관리자모드로 그냥 들어가는데 보안상 문제가 있는건 아닌지?

sudo를 아무나 못쓰게 설정 할 수 있음

$ sudo docker ps 하면 잘 실행 됨

docker-compose build 를 하려고 하니까

docker-compose깔라고 친절하게 설명 해줌

$ sudo apt install docker-compose를 통해서 docker-compose를 깔아준다.

그리고나서 $ sudo docker-compose build 를 해준다.

docker하면서 쓴거 npm => package.lock
기존에 깔아서 쓰던거 yarn => yarn.lock

두 버전의 lock파일이 충돌이 나서 에러가 난건데, 무시하면 된다.

그리고나서 백그라운드로 실행을 시켜준다
$ sudo docker-compose up -d

이렇게 해놓으면 누구나 어디서든 포트 3000번을 통해서 https로
내가만든 사이트를 들어 올 수 있다.

SSH를 중지하게 되면 내가 쓰던 ip를 반납하게 되는거기 때문에
ip주소가 바뀔 수 있음.
고정 ip를 쓰려면 돈내고 쓰면됨

LB ip는 바뀌지 않게끔 고정ip를 줬었음.

A를 통해서 LB로 연결이 되는데 여기는 고정 ip를 준 모습


sudo안쓰고 실행시키는 방법

buffer-overflow 해킹의 위험성?

$ sudo docker-compose up
관리자 권한으로 docker가 실행되었을때, 버퍼 오버플로우를 통해서
해킹을 당했다면, 해커가 관리자권한을 갖게된다.
그래서 뭔가 실행시켰을때 sudo를 통해서 실행시키지않는다.

$ cat /etc/group

내이름을 도커에 넣어줘야함

$ sudo usermod -aG docker byungjin0120

이 명령어를 쳐주고나서 SSH를 껐다가 다시켜서

$ cat /etc/group 을 쳐서 확인해보면

도커에 내 이름이 잘 들어간거 확인 됨

$ docker-compose logs -f

실행되었던 부분 다 나옴

###############

$ top

누가 뭘 실행시켰고 , 어떤 아이디로 했는지 등등.. 작업량이 여기에 다 쌓임.

swap메모리(디스크) : 메모리가 많이 차면 임시로 공간을 만드는데 그게 swap,
메모리에있는걸 디스크에 저장하면 속도가 많이 늦어지니까 잘 써야함
(메모리 속도 빠름 , 디스크 속도 느림)

강제종료하고 싶을땐
kill -9 강제종료하고싶은PID 를 해주면 됨

NI(nice)를 통해서 우선순위를 높일 수 있음

RES 실제등록된 메모리
SHR 공유하고있는 메모리
VIRT Virtual 메모리

$ top를 쳐서 나오는것들은 computer science 관련지식이니까
알아만 두자. 지금 당장 알 필요 없음.


리액트 네이티브 설치(M1 기준)

https://reactnative.dev/docs/environment-setup 로 들어가서

React Native CLI Quickstart

macOS , Android 선택후

Download and install Android Studio 클릭해서
들어가서

https://developer.android.com/studio

android studio 설치해준다.

$ brew install node
$ brew install watchman
$ brew install --cask adoptopenjdk/openjdk/adoptopenjdk8

터미널에서 위에있는 명령어들을 실행시켜서 깔아주고

More Actions -> SDK Manager로 들어가서

Andoroid 10.0(Q) 선택

그리고나서 우측하단에 Show Package Details 선택하고나서

Android SDK Platform 29
Intel x86 Atom_64 System Image
Google APIs Intel x86 Atom System Image 선택

그리고나서 Apply를 눌러서 적용시켜주면 설치가 되고,
OK를 누르면 됨.

More Actions -> AVD(Android Virtual Devices) Manager 선택

이런창이 뜨는데 재생아이콘 누르면

이렇게 핸드폰 화면이 나옴


환경변수 만들기

실행결과를 핸드폰 에뮬레이터에 보여줘야하기 때문에
에뮬레이터가 어디 설치되어있는지 알려줘야함
그래서 환경변수에 위치를 알려줘야함

$ env 하면 환경변수 목록이 나옴

vsCode의 codecamp 03 최상위 폴더에서

$ npx react-native init freeboard_mobile

CocoaPods 에러는 신경안써도 된다. 이래도 설치 된것임.
IOS와 Android와 다르기 때문에 에러가 나는거라고 하심
지금은 Android니까 신경안써도됨

터미널에서

$ ls -al 하면 ./bash_profile , /.bashrc , ~/.zshrc 셋중에
하나가 있을텐데

./bash_profile , /.bashrc , ~/.zshrc
셋중에 하나 들어가서 작업해주면 됨

vi 에서 i는 insert모드임

$ vi .zshrc(editor 모드) 로 들어가서 맨밑에

export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools

복붙해준다

esc 누르면 insert모드가 꺼지고
:wq 치고 엔터 누르면 저장하고 종료가됨

그리고나서 실행시켜야함
$ source .zshrc

그리고나서
$ echo $ANDROID_HOME하면

위치가 잘 나온다.

$ npx react-native run-android
이렇게 해주고

vsCode에서
$ echo $ANDROID_HOME이 반영이 안되어 있을 수 있어서
reload를 한번 해주면 된다.

이렇게 켜지면 된거임

저 모바일 화면(웹뷰)안에서 작업을 하면됨.

profile
Hello~~👋

0개의 댓글