Homoacademycus

  • Installation
  • TechOpinion
  • TroubleShooting
  • Develop Scripts

install celery with django

March 25, 2021

설정 - djangoProj/configs/settings.py

Continue reading

jekyll

March 11, 2021

깃페이지 생성

repo name = username.github.io

Continue reading

install jupyter notebook

March 9, 2021

Jupyter Notebook

웹 브라우저(Tornado web 프레임워크) 기반의 인터프리터. 문서화/학습 기능 로컬 서버의 kernel이 IPython 인터프리터를 실행시킴

Continue reading

install jupyter lab

March 9, 2021

Jupyter Lab

pip install jupyterlab --editable ${PRJ_PATH}

a Tornado based HTML Server that serves up an HTML5/Javascript JupyterLab client.

Continue reading

react-gitpage

March 8, 2021

  1. gh-pages 설치
    npm install --save-dev gh-pages
    
Continue reading

install npm

February 25, 2021

  • nodejs 크롬 V8 엔진으로 빌드된 js 실행환경. 웹브라우저 외에서도 js 사용가능.
Continue reading

vscode

February 24, 2021

자동 온라인 통신 설정 제거

@tag:usesOnlineServices
update.mode
update.showReleaseNotes
extensions.autoupdate
extensions.autocheckUpdates
extensions.showRecommendationsOnlyOnDemand
workbench.settings.enableNaturalLanguageSearch
workbench.enableExperiments
telemetry.enableTelemetry
telemetry.enableCrashReporter
git.autofetch
npm.fetchOnlinePackageInfo
Continue reading

install vlc

February 21, 2021

centos7

sudo subscription-manager repos –enable “rhel--optional-rpms” –enable “rhel--extras-rpms” sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm sudo yum install https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm sudo yum install vlc

Continue reading

vmware

February 20, 2021

설치 프로그램

vmware-installer –help

Continue reading

validateField

February 20, 2021

joi 모듈

  • schema의 필드 유효값 설정
    {
    필드명: joi.필드타입().required(),
    body : joi.string().required(),
    tags : joi.array().items( joi.string() ).required(),
    }
    
  • 검증
    const validated = joi.validate(ctx.request.body, postSchema);
    if ( validated.error ){
    ctx.status = 400; // Bad Request
    ctx.body = validated.error;
    }
    
Continue reading

swarm

February 20, 2021

스웜 조건

  • 각 서버 간의 스웜 manager가 통신할수 있게 TCP 포트가 열려 있어야 한다.
  • 각 서버에 도커가 설치되어 있어야 한다.
  • 스웜의 보안성을 위해 TLS 인증이 있어야
  • 스웜 manager: 스웜 클러스터의 도커 노드(Docker node)를 관리하기 위한 시스템
  • 스웜 manager도 유사시를 대비해 여러 개의 백업manager를 만들어 두는 것이 좋다.
  • 로드 밸런싱을 할 때 라운드로빈 방식을 쓴다.
Continue reading

sqlDeveloper

February 20, 2021

Running SQL Developer in a Docker container

Docker is a hot topic at the moment and many have written interesting articles about how to use Docker in combination with Oracle. I especially liked Frits Hoogland’s article on installing an Oracle 12c database in a Docker container. It got me thinking about running SQL Developer in a container and how we can achieve this. There have been several other articles about this but I use a somewhat different approach than most.

Continue reading

postman

February 20, 2021

postman? API 테스트 이력을 보여주는 history API 테스트를 그룹화 하여 관리해 주는 collection 테스트 할 RESTful API 정보를 입력하기 위한 입력창

Continue reading

oracle11g

February 20, 2021

  1. 컨테이너 백그라운드 실행
    docker run --name=oracle11g2 -d -p 50000:8080 -p 1521:1521 -v /home/clusters/dockerRepo bvives/oracle11g
    
  2. 실행 확인
    docker info
    
  3. 오라클 sqlplus 터미널 모드 실행 ``` docker exec -it oracle11g2 bash root@a94b2fca76c8:# sqlplus
Continue reading

mongodb

February 20, 2021

잘 사용하고 있었는데 갑자기 이게 뜸

(node:13283) DeprecationWarning: current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.
(Use `node --trace-deprecation ...` to show where the warning was created)
Continue reading

memoryAllocation

February 20, 2021

메모리 종류

  1. Stack
    • 메소드 내 지역변수
    • 참조 변수(주소 값 저장)
Continue reading

java install

February 20, 2021

Java openjdk 패키지 설치

sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt update
sudo apt install openjdk-11-jre
sudo apt install openjdk-11-jdk
sudo apt install ppa-purge
sudo ppa-purge ppa:openjdk-r/ppa
Continue reading

intelliJ setting

February 20, 2021

eclipse 프로젝트를 IntelliJ 프로젝트로 변환하기

Workspace, Project –> Project, Module 로 이름 대응하여 import

new Project 생성

Graddle > Java, Web

Tomcat Run 설정

Run > Edit Configuration > Tomcat Server > Local > Deployment > + > Artifacts > (exploded)

Enable Annotation Processing

Settings > Build, Execution, Deployment > Compiler > Annotation Processors

build/run using Gradle(default) or IDE

Settings > Build, Execution, Deployment > Build Tools > Gradle

IntelliJ가 Graddle을 default로 run하는 이유 ?
Local PC와 Continuous Integration Server에서 모두 동일한 테스트 결과를 얻기 위해 gradle로 실행

src/main/webapp/WEB-INF/web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/applicationContext.xml</param-value>
    </context-param>
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>

    <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/dispatcher-servlet.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

</web-app>
Continue reading

install react

February 20, 2021

모듈만 설치해서 import

``` https://cdnjs.cloudflare.com/ajax/libs/react/버전/react.js, react-dom.js

Continue reading

install createreactapp

February 20, 2021

create-react-app 모듈

번거로운 webpack, balel 설정을 대신하여 facebook 에서 공식지원하는 틀 생성 도구

프로젝트명/
  README.md
  package.json
  node_modules/package.json 파일에는 명시되지 않은 로컬모듈들
  public/static 파일들
    index.html //create-react-app의 엔트리포인트(파일명 변경불가)
    favicon.ico
  src/
    index.js //create-react-app의 엔트리포인트(파일명 변경불가)
    App.js
    App.test.js
    App.css
    index.css
    logo.svg

react-scripts 명령어 : 사용자가 설정을 건들지 못하도록 package.json 과 webpack 설정을 캡슐화 ``` package.json

Continue reading

gradle task

February 20, 2021

graddle

명령(gradle compileJava, gradle run)에 의한 task 수행

  1. build.graddle 파일에서 task의 처리를 정의해두기 ```graddle task 테스크명 { doFist { 제일 처음에 처리할 내용 } doLast { 제일 마지막에 처리할 내용 }

}


2. shell에서 실행

graddle 테스크명


# 매개변수 전달
1. build.graddle에 정의
```graddle
task myTask {
    println("입력한 값은 : "+x)
}
  1. shell에서 실행
    gradle myTask -Px=값
    

다른 task 호출

task 테스크명 {
    doFist{
        println("테스크명의 doFirst 실행..")
        tasks.aaa.execute()
    }
}
task aaa {
    doLast{
        println("aaa의 doLast 실행...")
    }
}

task 종속성 설정

task 테스크명 (dependsOn : '선행되어야할task명') {

}
task 테스크명 (dependsOn : ['선행task1','선행task2'] ) {

}
Continue reading

gradle dependencies

February 20, 2021

dependency 설정

dependencies {
    compile group: 'commons-io', name: 'commons-io', version: '2.4'
    if (org.gradle.internal.os.OperatingSystem.current().isLinux()) {
        compile fileTree(dir: 'lib/hdf5/linux', include: '*.jar')
        runtime fileTree(dir: 'lib/hdf5/linux', include: '*.so')
    } else {
        compile fileTree(dir: 'lib/hdf5/win64', include: '*.jar')
        runtime fileTree(dir: 'lib/hdf5/win64', include: '*.dll')
    }
    testCompile group: 'junit', name: 'junit', version: '4.12'
}
Continue reading

git

February 20, 2021

설치

sudo apt-get install git-all
Continue reading

forever nodemon

February 20, 2021

forever

소스 파일의 내용이 바뀌면 자동으로 node를 재시작

  • -w 옵션 : 감시 시작
    $ npm install -g --save-dev forever
    $ forever start -w ./app.js
    
  • -l 옵션 : 로그를 파일로 저장, -a 옵션 : 로그를 덧붙이기
    forever start -l $PWD/logs/example.log -a -w ./app.js
    
  • 감시에서 제외할 파일과 경로를 지정 ``` .foreverignore
Continue reading

firefox

February 20, 2021

웹브라우저 환경 custom 설정

주소창에 다음을 쳐서 설정한다. 설정 후 꼭 버튼을 눌러야 적용된다. ``` about:config

Continue reading

eclipse pydev

February 20, 2021

  1. pyDev설치
    help - install new software - add - http://pydev.org/updates
    
Continue reading

eclipse plugin

February 20, 2021

이클립스 플러그인 설치 및 삭제 방법

Help-> Software Updates -> Find and Install

Continue reading

eclipse java setting

February 20, 2021

## 자바 버전 변경(이클립스)

  1. 현재 이클립스에 등록된 jdk, jre 목록
    Window > Preference > Java > Installed JREs > jdk버전 확인
    환경설정 > Java > Compiler > jdk버전 확인
    
Continue reading

eclipse debugging

February 20, 2021

## 디버깅

  1. break point(중단점) 만들기 : 원하는 지점의 줄번호 옆을 마우스 클릭
  2. F11을 눌러 디버깅모드로 시작하면 디버깅 창이 뜬다.
  3. 디버깅 창에서 아이콘을 선택하거나, 단축키를 눌러 기능 수행
    • Ctrl+Alt+B : 모든 중단점 건너뛰기
    • F5 : 1단계 프로세스 진행-함수 안으로 들어감
    • F6 : 1단계 프로세스 진행-함수 안으로 안 들어감
    • F7 : 함수의 리턴값만 확인하고 호출부로 돌아감
    • F8 : 다음 중단점까지 쭉 진행
    • Drop to Frame : 현재 단계의 스택 프레임 첫행으로 이동(다시 시작)
  4. 디버깅 진행 중 변수에 커서를 위치하면 변수 값 확인 가능
  5. 또는 Variables 창에서 모든 변수의 값 확인 가능
  6. 또는 Expressions 창에서 사용자가 추가한 변수만 관리 가능
    • 변수 추가 방법 : 변수를 오른쪽 클릭 > Watch
Continue reading

eclipseShortCut

February 20, 2021

Debugger

  1. 디버그 perspective : stack프레임, 변수 뷰 표시
  2. 중단점 설정 후 디버그 모드 실행
    • F5 : 한 문장 실행, 메소드 진입
    • F6 : 한 문장 실행, 메소드 패스
    • Ctrl+R : 지정된 문장까지 실행
    • Resume : 실행 재개
Continue reading

dockerRootless

February 20, 2021

install non-root user docker

``` Rootless mode executes the Docker daemon and containers inside a user namespace. This is very similar to userns-remap mode, except that with userns-remap mode, the daemon itself is running with root privileges, whereas in rootless mode, both the daemon and the container are running without root privileges.

Continue reading

docker

February 20, 2021

삭제

``` sudo yum remove docker
docker-client
docker-client-latest
docker-common
docker-latest
docker-latest-logrotate
docker-logrotate
docker-engine
docker-selinux

Continue reading

buildAutoTools

February 20, 2021

Build Tool

  1. 빠른 기간동안에 계속해서 늘어나는 라이브러리의 추가
  2. 프로젝트를 진행하며 라이브러리의 버전을 동기화

Apache Ant

  1. 각 프로젝트에 대한 XML기반 빌드 스크립트 개발
  2. 형식적인 규칙이 없음 : 결과물을 넣을 위치를 정확히 알려줘야 하며, 프로젝트에 특화된 Target과 Dependency를 이용해 모델링 –> 스크립트 재사용 어려움
  3. 절차적 : 명확한 빌드 절차 정의가 필요
  4. 생명주기를 갖지 않기 때문에 각각의 target에 대한 의존관계와 일련의 작업을 정의해 주어야 함

Apache Maven

  1. multi poject 환경에서 여러 라이브러리들을 연결 및 업데이트
  2. pom.xml을 이용한 정형화된 빌드 시스템

Gradle

  1. multi project 환경에서 설정을 상속받을 필요 없이 다른 모듈에 주입
  2. xml 대신 Groovy라는 언어(JVM 위에서 동작하는 스크립트 언어) 사용
  3. 안드로이드 스튜디오의 공식 빌드 시스템
  4. 다양한 언어 지원

Gradle

settings.gradle 파일–> multi project 여부 설정, project의 인스턴스생성

build.gradle 파일

Gradle 사용자 메뉴얼

https://docs.gradle.org/current/userguide/userguide_single.html#producing_and_consuming_variants_of_libraries

Continue reading

atom

February 20, 2021

아톰 개발자도구 보기

View>Developer>ToggleDeveloperTools

Continue reading

ansible

February 20, 2021

install

Ansible이 Extra Packages for Enterprise Linux (EPEL) repository의 일부이기 때문

sudo yum install -y epel-release
sudo yum repolist
sudo yum install -y ansible
Continue reading

anaconda

February 20, 2021

아나콘다

python 기반의 데이터분석용 오픈소스를 모아놓은 플랫폼 가상환경 제공–> 다른 버전의 파이썬에서 실행 가능

아나콘다 설치 및 사용자 환경변수 설정

sudo sh Anaconda3-2019.10-Linux-x86_64.sh
conda init
sudo vi ~/.bashrc
    export PATH="/home/commonuser/anaconda3/bin:$PATH"
source ~/.bashrc

conda –version conda update conda conda list conda info –envs 가상환경 정보 conda create –name test1 python=3.4 가상환경 생성(with 파이썬) activate test1 conda install simplejson conda list conda uninstall simplejson activate base conda remove –name test1 –all conda clean

패키지 설치

아나콘다 가상 환경에 패키지를 설치할 때 pip를 사용하면 아나콘다 설치 폴더의 Lib/site-packages에 저장되므로

pip라고 할 경우, anaconda3 에서 관리하고 있는 전역 pip에 들어가게 된다.
pip2 의 경우, local 내에 깔린 pip2 (python2 버전) 에 들어가게 된다.
pip3 의 경우, local 내에 깔린 pip3 (python3 버전) 에 들어가게 된다.

pip 대신 conda를 사용해야 conda info: 현재 환경 정보 출력 conda search 패키지: 패키지 검색 conda install 패키지=버전: 특정 버전의 패키지를 설치 (예: conda install numpy=1.11.3) conda install 패키지=버전=파이썬버전: 파이썬 버전을 지정하여 특정 버전의 패키지를 설치 (예: conda install numpy=1.11.3=py36_0) conda update 패키지: 패키지 업데이트 conda list: 패키지 목록 출력 conda remove 패키지: 패키지 삭제 conda list –export > package-list.txt: 패키지 목록 및 버전 정보 저장: conda install –file package-list.txt: 패키지 목록으로 설치

아나콘다의 가상환경 설치경로

conda는 venv와는 달리 가상 환경을 현재 폴더에 생성하지 않고 아나콘다 설치 폴더의 envs 안에 생성

 C:\Users\dojang\Anaconda3\envs\test1

스크립트 실행 : ctrl+shift+B

크롬 개발자 도구

마우스 우클릭>copy>copy selector Network탭>preserveLog(새로고침해도 기록이 안 지워짐) Performance탭>녹화>현재화면에서 실행한 동작 녹화

Continue reading

Tomcat

February 20, 2021

톰캣 홈 디렉토리

``` cd /var/lib/tomcat8/webapps/ROOT vi test.jsp

Continue reading

Tenserflow

February 20, 2021

Tenserflow 설치

python과 함께 numpy, scipy, pandas, jupyter, scikit-learn, gensim, BeautifulSoup4, Tensorflow가 설치되어 있다.

docker run -d -p 8888:8888 -p 6006:6006 teamlab/pydata-tensorflow:0.1
Continue reading

MySql

February 20, 2021

MySQL 설치

``` docker run -d -e MYSQL_ROOT_PASSWORD=password1 –name=mysql1 mysql:5.7 docker exec -it mysql1 bash

Continue reading

MinGW

February 20, 2021

c/c++ 컴파일러 MinGW 설치

https://sourceforge.net/projects/mingw-w64/ 
architecture : x86_64
Threads : win23
Continue reading

Java Jar

February 20, 2021

[방법1] 외부 라이브러리로 경로 참조하기

프로젝트 폴더 > 속성 > Java Build Path > Libraries > Add External JARs

  • Referenced Libraries에 추가가 된다.
  • 경로를 참조하여 jar 파일을 쓰는 것이라서, 타 컴퓨터에서 사용이 불편

[방법2] 프로젝트 폴더의 lib에 복사해넣기

프로젝트 폴더 > 속성 > Java Build Path > Libraries > Add JARs

  • 타인에게 프로젝트 통째로 전송할 때 유용

[방법3] 시스템 라이브러리로 지정

자바 경로/jre버전/lib/ext 자바 경로/jdk버전/lib

  • 모든 프로젝트에서 접근 가능: 매번 설정 안해도 됨

이클립스 Java EE

웹 응용 프로그램 컨테이너의 class loader(톰캣, glassfish..)가 참조하도록

동적 웹 프로젝트명/Web Content/WEB-INF/lib
Continue reading

IDE encoding

February 20, 2021

이클립스에서 자바 애플릿 (swing)실행시 한글이 깨질 때

Run Configuration
-Dfile.encoding=MS949
Continue reading

pyvenv

February 12, 2021

가상 환경

apt-get install python3-venv
  • 목적 : 프로젝트 별로 사용되는 여러 모듈들 간 의존성 문제를 방지하고자
  • 가상 개발환경 안에서만 모듈을 설치 –> 작업수행 후 비활성화
  • 독립된 각각의 환경에 다른 버전의 라이브러리들/인터프리터을 설치
  • sudo 권한이 필요 없음
Continue reading

pip

August 26, 2020

pip란?

파이썬 라이브러리들을 관리하는 패키지 파이썬 3.4 이후 버전부터는 default로 설치됨

apt install python3-pip

자주 업데이트 되므로 가상환경에서 업데이트 하는 것을 추천

pip3 install --upgrade pip
Continue reading

Copyright with Homoacademycus