# environment

74개의 포스트
post-thumbnail

SwiftUI / Model data & Property Wrapper

Apple Developer 문서에 표현된 SwiftUI / Model data 및 State, Binding Property Wrapper 탐방 https://developer.apple.com/documentation/swiftui/model-data https://developer.apple.com/documentation/swiftui/state https://developer.apple.com/documentation/swiftui/binding [https://docs.swift.org/swift-book/documentation/the-swift-

2023년 8월 10일
·
0개의 댓글
·

Docker로 Ubuntu 사용해보기

Docker로 Ubuntu Container 만들고 실행하기 ✓ 우분투 이미지 Pull ✓ 설치된 이미지 확인 ✓ 우분투 컨테이너 생성 직관적으로 사용하기 쉽게 컨테이너명은 ubuntu로 설정했다. ✓ 컨테이너 실행 ✓ 우분투 컨테이너 접속 $ docker attach 컨테이너명 으로 실행중인 컨테이너 쉘에 접근할 수 있다. attach 명령어는 실행중인 컨테이너에 터미널을 붙이는 기능을 수행한다. 실행중인 컨테이너에 터미널을 붙이기 위해서는 컨테이너 생성(create)시에 -it 옵션을 주어서 생성하여아한다. > -it 옵션 > > 1. i 옵션: stdin(표준 입력)을 활성화한다. 이 옵션을 사용하지 않으면 컨테이너로 입력을 보낼 수 없다. > 2. t 옵션: TTY(TeleTYpewriter) 모드를 사용하도록 하는 옵션

2023년 7월 24일
·
2개의 댓글
·
post-thumbnail

anaconda 가상환경 offline환경으로 옮기기

내부망에서 anaconda를 사용할 일이 생겼다. 다만, 인터넷이 되지 않는 환경이기 때문에 가상환경을 만들어 필요한 패키지만 받아서 usb를 이용하여 옮겨야 한다. 냅다 구글에 anaconda moving environment라고 검색을 하니 Anaconda blog post인 Moving Conda Environment이 나왔다. 그리고 나의 상황에 알맞는 Conda Pack에 대한 소개가 있다. 우선 Conda Pack을 사용하기 전에 옮길 라이브러리를 담을 가상환경을 만들었다. ![](https://velog.velcdn.com/images/jinhoss/post/3e4c4c22-ad40-4c

2023년 4월 13일
·
0개의 댓글
·
post-thumbnail

Properties를 이용한 Value 자동 구성

Spring boot를 만들어 사용하다보면 application.properties에서 변수를 지정해서 사용한 적이 한번은 있을겁니다. Web Application이 실행되면서 Bean에 설정된 Property를 변경할 수 있게 제공하는 기능을 Environment Abstraction이라고 합니다. 여기서는 boot에서 제공하는 application.properties와 같이 사용자가 직접 만들어 사용하는 방법을 설명합니다. > 인프런 토비선생님의 스프링부트 강의내용을 옮긴 글입니다. 1. Load 우선순위 property를 선언하는 방법은 다양합니다. 그리고 각설정에는 우선순위가 존재합니다. 따라서 같은 값을 제공해도 우선순위가 높은 설정에 값을 불러옵니다. > System valiables : 1

2023년 4월 6일
·
0개의 댓글
·
post-thumbnail

스프링 부트(7)-환경 설정(environment), 프로퍼티 (property)

환경 추상화 스프링이 제공하는 environment abstraction(환경 추상화)이란 무엇인가? 애플리케이션이 동작하는 환경은 목적이나 사용자에 따라서 조금씩 다르다. 스프링은 동작 환경에 맞춰서 코드를 매번 수정하지 않더라도, 애플리케이션의 구성 설정을 바꿀 수 있는 매커니즘을 제공한다. 어떤 빈들을 사용할 것인지 프로파일(또는 프로필)이라 부르는 애노테이션을 이용해서 이름을 지정해주면, 특정 조건을 만족하는 프로파일일 때만 빈들이 생성되거나 무시되도록 구성이 가능하다. 프로파일 말고 스프링에서 환경 추상화에서 중요한 축을 담당하는 게 Property(프로퍼티) 값을 읽어오는 것이다. 애플리케이션의 프로퍼티라 하면 다양한 것들이 떠오를 수 있다. 커멘드 라인 명령에서 뒤에 argument에 값을 지정한다거나, 환경 변수, 클라우드의 중앙화된 설정값을 사용하기도 한다. 스프링은 자바, 서블릿에 존재하는 다양한 방법으로 접근이 가능한 프로퍼티티를 environment라

2023년 2월 21일
·
0개의 댓글
·
post-thumbnail

딥러닝 개발환경 구축 자동화(Docker, Conda)

안녕하세요, 이번 포스팅에선 다양한 논문을 재현하거나, 자사 서버에서 개발한 AI 프로그램을 타사에서 재현하거나, 프로젝트 별로 목적에 맞는 개발환경을 빠르고 편하게 구축할 수 있도록 자동화를 진행해보고자 합니다. 자사 서버 개발환경 체크 OS: Ubuntu 18.04 GPU Architecture: NVIDIA A5000 (Ampere) 사용가능한 CUDA Version: CUDA 11 > 신제품 기준 Ampere 아키텍처만 판매하므로 추후 CUDA 버전은 11 이상을 사용해야 할 것 같습니다. 연구에 많이 사용되는 A100의 경우 CUDA 9,10,11을 모두 지원하나, 개인용으로 볼 수 있는 RTX 30XX, 40XX 번대 제품들은 CUDA 11 이상을 사용해야겠네요. 다만 추후에 설명

2023년 2월 16일
·
0개의 댓글
·
post-thumbnail

AWS 람다 실행 환경(AWSLambda execution environment) 정리

Lambda AWS Lambda는 서버리스 환경에서의 독립적인 실행환경에서 handler라는 함수를 호출한다고 생각하시면 되겠습니다. 그러면서 서버리스라고 하는 마이크로 실행환경을 가지고 있어서 생성 주기(수명주기)가 중요합니다. Lambda 서비스는 별도의 외부 환경에서 API Endpoints와 그 내부의 프로세스들을 실행한다고 생각하시면 되는데, 이것이 '이벤트와 시간 베이스로 실행 되는 구나'라고 생각하시면 되겠습니다. 이러한 서비스들끼리의 공유는 권한, 리소스, 자격 증명 및 환경 변수는 함수와 확장 간에 공유됩니다. Lambda 실행 환경 주기 ![](https://velog.velcdn.com/images/cjswo9207/post/f58ecdd5-6d46-43a2-9426-

2023년 2월 10일
·
0개의 댓글
·
post-thumbnail

Mac 터미널 세팅하기 (zsh & iterm)

개발을 하면서, 가장 많이 사용하게 되는 요소 중 하나가 바로 터미널입니다. > 오늘은, 맥북의 터미널을 아름답고 효율적으로 꾸며보도록 할 것입니다. 터미널 환경 구성 /assets/images/settings-mac-terminal/1.png 여러분들이 별도의 환경설정을 하지 않았다면, 위의 사진과 비슷한 모습일 겁니다. 하지만 이 글을 끝까지 따라한다면 아래와 같이 꾸밀 수 있을 것입니다. /assets/images/settings-mac-terminal/2.png 1. zsh 및 oh-my-zsh 설치하기 zsh 설치하기 oh-my-zsh 설치 zsh 확인 쉘 이름은 echo $0 환경변수로 확

2022년 12월 2일
·
0개의 댓글
·
post-thumbnail

[WWDC19] Data Flow Through SwiftUI

✏️ Data Flow Through SwiftUI 2 Principles every time you read a piece of data in your view, you're creating a dependency for that view. View에서 데이터를 읽을 때마다, 해당 View에 대한 의존성을 생성한다. (데이터가 변경될 때마다 새 값을 반영하기 위해 View를 변경해야 하기 때문) 파란색 PlayerView가 보라색 데이터를 읽어야 한다고 할 때, 보라색 값이 변경될 때마다 View를 업데이트 해야 한다. SwiftUI는 수동 동기화 또는 무효화의 과정이 없기 때문에, SwiftUI로 몇가지 tool을 사용하여 프레임워크에 대한 의존성을 간단히 선언하면 프레임워크가 나머지

2022년 11월 16일
·
0개의 댓글
·

우분투 특정 포트 죽이기

8080포트 죽이는 법 참고

2022년 11월 7일
·
0개의 댓글
·
post-thumbnail

[Node.js] 2. 개발 환경 설정

나는 노트북을 새로 샀고 이 노트북은 윈도우다 그래서 그냥 대충 VS Code를 설치해서 노드를 사용해볼것이다 노드 설치하기 걍 깔면 됨.. 파워쉘 켜지면서 설치 진행되는지 확인 window + s cmd 창 켜고 node -v 명령어 입력 제 노드 버전은 16.18.0 이네요 npm 버전도 확인 (node package manager) npm -v 6.14.4 > [nodejs] 설치 및 환경변수 설정 환경변수 설정은 위 링크를 참고했습니다.. VS Code 설치하기 이것도 그냥 깔면 되네요..

2022년 10월 18일
·
0개의 댓글
·

React-Native CLI 개발 환경 셋팅

1. Xcode 설치 & Android Studio 설치 2. Homebrew 설치 3. iTerm2 설치 4. oh-my-zsh 설치(선택 사항) 5. node 설치 6. watchman 설치 7. cocoapods 설치 8. react-native-cli 설치

2022년 10월 16일
·
0개의 댓글
·

[Javascript] 컨텍스트

실행 컨텍스트란? 코드에 제공되는 환경정보를 모아놓은 객체 실행 컨텍스트 흐름 콜 스택에는 전역 컨텍스트를 시작으로 함수가 호출될 때 마다 컨텍스트가 쌓인다. 전역 컨텍스트 : 브라우저가 자동 실행한 최상단 코드의 컨텍스트 콜 스택 상단에 있는 컨텍스트와 관련된 코드가 순차적으로 실행된다. 실행도중 함수를 만나면 현재 실행중인 컨텍스트를 중지하고 새로 쌓인 컨텍스트와 관련된 코드를 실행한다. 코드의 실행이 종료될 때 현재 실행중인 컨텍스트가 콜스택에서 제거 된다. 전역 공간에 더는 실행할 코드가 남아 있지 않아 전역 컨텍스트가 제거되면 콜 스택이 빈 상태로 종료된다. 실행 컨텍스트에 담기는 정보들 VariableEnvironment > 선언 시점의 컨텍스트 내, 외부 환경정보 스냅샷 변경사항 반영되지 않는다. LexicalEnvironment > 실시간 컨텍스트 내, 외부 환경정보 변경사항이 실시간으로 반

2022년 7월 14일
·
0개의 댓글
·
post-thumbnail

환경별로 Profile 분리하기

⚠️ 애플리케이션 실행 환경은 각각 다를 수 있고 특정 환경의 설정은 안전하게 별도로 관리되어야하는 경우가 있습니다. 저희 프로젝트에서는 네 가지 Profile로 나눕니다. real - 실제 배포 환경의 Profile 입니다. dev - 개발 환경의 Profile 입니다. local - 로컬 환경의 Profile 입니다. mem - In-memory 환경의 Profile 입니다. Profile 설정 아래 코드 블럭으로 기재되어있는 .yml 파일들은 어느정도 축약된 내용들 입니다. appplication.yml 공통으로 사용할 설정은 application.yml에 작성합니다. 각 환경에 맞는 Profile 설정으로 해당 설정들을 오버라이딩 하거나 추가할 수 있습니다. application.yml application-real.yml 배포 환경의 profile입니다. Jasypt로 암호화된 설정값들이

2022년 7월 7일
·
0개의 댓글
·

ERROR 1698 (28000): Access denied for user 'root'@'localhost'

mariadb를 설치하고 처음 접속하면 sudo mysql로 비번없이 진입가능하다. sudo로 접속하여 아래 명령어로 비번을 설정하였다. 그러나 이상하게 계속 sudo로만 접속되고 mysql -u root -p 명령어로는 ERROR 1698 에러를 띄우며 접속이 되지 않았다. 스택오버플로우에서 해답을 찾았다. sudo로 접속 후 다음 명령어를 입력하면 된다. 이렇게 하고 나서는 sudo 로그인을 할 때에도 정확한 비번을 입력해야한다.

2022년 5월 30일
·
0개의 댓글
·

Could not find acceptable representation

vscode에서 lombok을 임포트하고 getter setter 어노테이션을 썼는데도 작동하지 않아서 생기는 문제였다. vscode에서는 빌드파일에 의존성을 추가해주는 것과 별도로 따로 lombok extension을 설치해야한다. 설치하고나서 다시 돌려보면 문제없이 작동한다.

2022년 5월 27일
·
0개의 댓글
·

mariadb root 비번 설정하기/변경하기

처음 mariadb를 설치하였을 경우 root 비번 설정하는 법 기존 설정한 비번을 바꾸고 싶을 경우 패스워드 입력 후 새로운 패스워드를 설정할 수 있다.

2022년 5월 14일
·
0개의 댓글
·

오라클 ssh 접속

인스턴스를 생성할 때 ssh 키를 생성한다. 기본적으로 linux8.5 운영체제가 선택되는 것 같다. mobaxterm을 다운 받는다. 매번 이름을 까먹어서 '푸티같은 프로그램' 검색해서 찾고 있다.. mobaxterm 연결방법 1) session > ssh 클릭 2) remote host에 오라클 공개 ip 입력 3) advenced ssh setting 클릭하여 use private key 체크하고 비밀키파일 업로드 4) ok 누르고 username: 란에 opc 입력 ssh키는 분실하면 복잡해지므로 꼭 안전한 곳에 보관하자

2022년 5월 13일
·
0개의 댓글
·

flask + heroku 배포(하다가 만났던 에러들)

배포 준비 runtime.txt 작성 gunicorn 설치 requirements.txt 작성 format 옵션을 주지 않으면 버전이 아니라 경로가 포함되는 경우가 생기는데 이것때문에 에러가 발생할 수도 있다. 그래서 경로 없이 깨끗한 파일을 얻고 싶다면 꼭 저 옵션을 줘야한다. 전에는 이걸 몰라서 일일이 손으로 경로 지우고 버전 적는 노가다를 했었다.. Procfile 작성 heroku 배포 시 주의점 heroku는 동적으로 port를 할당하기 때문에 꼭 지정된 포트에서 시작하지 못할 수 있다. 이 경우 지연되다가 아예 서버를 시작하지 못할 수도 있다고 한다. host 옵션으로 0.0.0.0을 줘야한다. => 요약 app.run(host='0.0.0.0') 기타 앱, 데스크톱 혹은 TV용 구글 api 클라이언트 키를 사용할 경우 heroku에서 배포할 수 없다. 이거 몰라서 한 사흘 날림

2022년 4월 21일
·
0개의 댓글
·

데브코스 W4D4

Environment ApplicationContext에서 제공하는 또 다른 중요한 기능중의 하나로 스프링 환경 설정인 Profiles, Property과 관련된 인터페이스이다. 실제 ApplicationContext의 인터페이스 구현 코드를 살펴보면 환경 설정과 관련된 EnvironmentCapable이라는 인터페이스를 확장하고 있는 의존 관계를 형성하고 있다. (Java에서는 인터페이스 간의 상속을 통한 확장이 가능하다.) Environment는 ApplicationContext의 getEnvironment메소드를 통해 설정파일에 대한 정보에 접근하여 사용하면 된다. Profiles 스프링 어플케이션을 개발할 때 개발 환경에 따라 변경이 되어야하는 빈 조합을 간단한 이름과 아노테이션을 통해 간단하게 전환할 수 있게 된다. 특정 빈 설정 세팅 방법은 해당 빈 설정 클래스에 @Profile("이름")을 설정한 후 Intellij IDE의 경우 Run>Edit Conf

2022년 4월 8일
·
0개의 댓글
·