본문 바로가기

꿀팁!

(56)
docker nginx에 무료 인증서 갱신하기 certbot certonly --nginx -d 도메인명 certbot을 이용해 certonly옵션으로 인증서를 발급해준다. /etc/letsencrypt/live/도메인명/fullchain.pem 대충 이경로에 생성됐다고 알려준다. 이제 이파일을 복사해주기만 하면된다. /docker/nginx/CA/도메인명/ 에 복사를 해줘야된다고 생각하지만 컨테이너 안에 반영을 해줘야 하기때문에 docer exec -it nginx서버 sh ex)docker exec -it ddc sh 명령어를 통해 nginx서버 안으로 들어가 /etc/nginx/CA/도메인명/ docker cp 명령어로 해당경로에 반영해주면 된다. docker cp ./도메인폴더명/ (컨테이너 아이디):/ 해당경로에 바로 복사해주고싶지만 권한문..
mysql 외래키 cascade설정 삭제 후 추가하기 mysql> select * from information_schema.table_constraints where table_name='테이블명'; 으로 키id확인 보통 테이블명_ibfk_1,이나 테이블명_ibk_1 이다. mysql> alter table 테이블명 drop foreign key 테이블명_ibfk_1; 으로 삭제 mysql> alter table 테이블명 add constraint 테이블명_ibfk_1 foreign key(테이블명에서 쓰는 외래키 이름) references db명.테이블명에서 쓰는 외래키 테이블(외래키 이름) on delete cascade on update cascade;
docker windows 설치로 window멈춤(먹통) 현상 있을 때 docker에서 Hyper-V를 사용하는것같은데 나의 경우 vmware를 쓰고있기떄문에 docker설치시 hyper-v가 켜지면서 vmware가 충돌이 나서 계속 window crash가 나게 된다. docker를 선택할것인가 vmware를 선택할것인가 서어어어언택하라! 나는 vmware를 선택했기때문에 hyper-v를 껐더니 해결이 됐다. >dism.exe /Online /Disable-Feature:Microsoft-Hyper-V >bcdedit /set hypervisorlaunchtype off 다음 명령어을 실행 후 재부팅해주면 hyper-v가 꺼지면서 해결이 된다. (도커는 vmware안의 linux에서 쓰는걸로..)
ubuntu 21.04 wired connection 사라졌을때 네트워크 연결 자체가 안되어 ens33이더넷은 ifconfig -a옵션을 해야 겨우보이고 ip조차 할당되어있지 않았다. /etc/netplan/yml파일도 수정해보고 이것저것 해봤지만 안됐고 sudo nmcli networking off sudo nmcli networking on 다음 명령어를 입력해주니 기가막히게 wired connection이 생기면서 연결이 됐다.
Flask+restful+SQLAlchemy+flask_jwt_extended공부 외주를 시작하기전 Flask+restx를 공부했는데 시작하니 Flask+restful로 구현을 해야 했고 많은 공부를 했던것 같다. 천재 리승형 동무의 설계덕분에 구조부터 완벽하다. flask를 구동할 main.py를 기준으로 같은 폴더내에 readme, requirements.txt가 있어서 개발을 하기전 readme를 보거나 requirements.txt로 pip install을 진행해 모두 같은 환경을 구축하기 쉽게 만들었다. 이제 하위 폴더로 api문서를 만드는 docs폴더, 실제 소스코드 구현인 폴더가 있고 docx에서는 각 클래스 별로 폴더를 만들고 각각의 get, post, put, delete인 .yml문서를 만들어준다. post.yml문서를 대충 적어보면 어떤기능인지 기술 --- tags..
github 사용법 정리-fork후 협업하기 보안프로그램 모듈 외주를 진행하면서 github를 사용하게 됐다. 예전부터 간간히 쓰지만 사용을 안할수록 잊어버리기 때문에 정리한다. 우선 실제로 진행하는 프로젝트의 우측상단에서 fork를 통해 나의 계정프로젝트로 복사해준다. 이후 나의 레포지토리 목록을 보면 fork한 폴더가 있다. 해당 폴더로 들어가면 이렇게 나의 개인주소와 원본 프로젝트의 주소가 아래에 나와있는것을 알 수 있다. 이후 나의 작업 컴퓨터에 깃허브를 설치하고 다음주소를 복사하면된다. git clone (복사한 URL) 작업할 컴퓨터의 터미널에서 해당 명령어를 입력해주면 fork된 나의 계정의 프로젝트를 그대로 가져온다.(vscode의 터미널을 이용하는것을 추천) git remote add 사용할 닉네임 (원본 프로젝트의 clone할 U..
Flask-RESTX Swagger를 이용한 문서화 localhost에 들어가면 기본적으로 문서화가 되어있다. app.py from flask import Flask from flask_restx import Resource, Api from todo import Todo app = Flask(__name__) api = Api( app, version='0.1', title="nam's api server", description="nanam's Todo API Server!", terms_url="/", contact="riotgames@kakao.com", license="MIT" ) api.add_namespace(Todo, '/todos') if __name__ == "__main__": app.run(debug=True, host='0.0.0...
flask + rest api 공부 flask의 장점 API Server를 가볍게 구현 할 수 있습니다. Docker나 Kubernetes를 이용해 여러 개의 컨테이너를 사용할때 용이 합니다. 일단 쉽고, 코드가 짧다. 설치 $ pip install flask $ pip install flask-restx 테스트용 코드 from flask import Flask # 서버 구현을 위한 Flask 객체 import from flask_restx import Api, Resource # Api 구현을 위한 Api 객체 import app = Flask(__name__) # Flask 객체 선언, 파라미터로 어플리케이션 패키지의 이름을 넣어줌. api = Api(app) # Flask 객체에 Api 객체 등록 @api.route('/hello')..