1. ubuntu - ip 확인(내부의 ip주소)
2. SSH server설치
3. SSH server port 확인
4. 우분투 방화벽 설정
5. SSH server 연결
6. 공유기(iptime) 포트포워딩
7. window powershell 접속(원격)
참고 자료
1. ubuntu - ip 확인(내부의 ip주소)
2. SSH server설치
3. SSH server port 확인
4. 우분투 방화벽 설정
5. SSH server 연결
6. 공유기(iptime) 포트포워딩
7. window powershell 접속(원격)
참고 자료
처음
재 수정
새로운 Branch
1. https://mujoco.org/download 에서 v.2.1.0버전(windows x86_64)을 다운 받는다.
- C:\Users\홈경로\.mujoco 폴더를 만들고 여기에 mujoco210폴더 아래 압축을 푼다.
2. https://www.roboti.us/license.html에서 Activation key를 찾아 다운 받는다 (mjkey.txt).
- 파일을 C:\Users\홈경로\.mujoco\mujoco210, C:\Users\홈경로\.mujoco\mujoco210\bin 복사
- bin폴더 내에서
> simulate ../model/humanoid.xml 실행하면
창이 뜨고 사람이 쓰러지는 화면이 나오면 설치가 잘 된 것임.
3. conda의 가상환경 py38로 들어가서 경로를 설정 후 mujoco-py 설치.
> set path=C:\Users\홈경로\.mujoco\mujoco210\bin;%PATH%
> pip install mujoco-py=2.1 설치. (안되면 =2.1 제거하고 시도)
4. python 실행하고, 아래 명령 실행하면 필요한 컴파일 진행
(import mujoco_py를 처음 실행 시에 여러가지 컴파일 자동 실행됨)
import mujoco_py import os mj_path = mujoco_py.utils.discover_mujoco() xml_path = os.path.join(mj_path, 'model', 'humanoid.xml') model = mujoco_py.load_model_from_path(xml_path) sim = mujoco_py.MjSim(model) print(sim.data.qpos)
sim.step() print(sim.data.qpos)
[참조] 1. MuJoCo 설치
- QT: c/c++언어 기반의 gui 라이브러리
- PyQT: QT와 다른 회사서 만듬
- PySide2: QT 회사에서 만듬
-------------------------------
from PySide2.QtWidgets import * # 기본 절차: (1) 응용프로그램(App) 시작, (2) window 생성, (3) layout 생성, # (4) 위젯(버턴, 라벨, ...) 만듬, (5) layout에 위젯 추가, # (6) layout을 window에 넘김, (7) window 출력, (8) App 실행 app = QApplication([]) # 응용 프로그램 시작 window = QWidget() # window를 생성 layout = QVBoxLayout() # layout을 생성 button = QPushButton("I'm just a Button man") # button 하나 만듬 layout.addWidget(QLabel('Hello World!')) # label을 layout에 추가 layout.addWidget(button) # button을 layout에 추가 window.setLayout(layout) # layout을 window로 넘김 window.show() # window 화면 출력 app.exec_() # 응용 프로그램 실행
참고
1. Medium
- DHCP 서버는 유동 ip 주소를 자동으로 할당, 회수 해주는 서버
- DNS 서버는 숫자 ip와 문자 ip를 바꾸어 주는 서버
- 허브, 스위치, 라우터
허브: 물리적 연결만 표현, 지능 없음. 들어오는 신호는 모든 연결부로 나감
스위치: 허브와 유사. 지능 가짐, 입력 데이터는 필요한 곳으로만 나감
라우터: 허브와 스위치는 내부망에 사용하나 라우터는 외부와 연결을 중계
class A: 10.0.0.0~10.255.255.255 class B: 172.16.0.0~172.31.255.255 class C: 192.168.0.0~192.168.255.255 사설망 주소는 모두 192.168.~ 로 시작함.
- 서브넷 마스크: ip 주소에 마스크를 씌워 네트워크 범위와 Host범위를 나누어줌
- 게이트웨이: iptime 공유기 주소
- DNS서버: 8.8.8.8(구글 DNS)
[설치]
$ sudo apt install python-celery-common -y $ sudo apt-get install redis-server -y $ pip install celery $ pip install redis
[코딩]
# tasks.py from celery import Celery BROKER_URL = 'redis://localhost:6379/0' CELERY_RESULT_BACKEND = 'redis://localhost:6379/0' app = Celery('tasks', broker=BROKER_URL, backend=CELERY_RESULT_BACKEND) @app.task def add(x, y): return x + y
[실행]
$ celery -A tasks worker --loglevel=info
[호출]
>>> from tasks import add >>> add.delay(4, 4) >>> result = add.delay(4, 4) >>> result.ready() >>> result.get()
[참고]
1. 비동기 처리
(1) OneQ 웹 프레임워크 Django(python) 개념 정리
- 프레임워크: lib는 사용자가 호출. framework는 framework이 사용자 코드를 호출
(3) [T24] 장고 01강_웹프로그래밍과 Django
-여기 까지는 DJango에 대한 부분으로 상기한 링크 자료만 학습하면 됨.
아래는 Django REST framework에 대한 부분으로 실습 해보아야 됨.
- DJango 학습 시에 유의할 사항은 django project(1개만 있음) 하에서 여러 app이 존재할 수 있다는 것을 이해.
app은 user관리, 결제처리, 등등... 필요에 따라 추가할 수 있으며 folder단위로 관리됨, 재 사용도 가능하다.
(4) [이 부분이 가장 중요] REST API Guide - Productionizing a Machine Learning model by creating a REST API with Python Django and Django REST Framework
(5) Django REST framework Quickstart
[참고] 자주 나오는 Serializer 클래스는 Model 데이터를 json으로 바꾸는 역할을 한다. 이 클래스를 만들고 model 데이터를 이 클래스 객체에 던져주면 json으로 바뀌어서 리턴된다.
[References]
1. Database 연동하기 - Model설계, Migration