본문 바로가기
반응형

OpenSource187

repository does not exist or may require 'docker login' k8s 상황은 이러하다. 1. Dockerfile로 이미지를 만들었다. Dockerfile + docker build 명령어 -> 이미지 뿅~ docker build -t xxxx:v0.1 . 2. docker images로 만들어진 이미지를 확인. 3. docker tag로 tag변경 가능. 4. docker push로 docker hub에 push!! docker push xxxx:v0.1 k8sdev.yaml apiVersion: apps/v1 kind: Deployment metadata: name: tomcat-deployment labels: app: tomcat spec: replicas: 1 selector: matchLabels: app: tomcat template: metadata: labe.. 2020. 2. 20.
docker hub login시 error 발생! docker login시에 error가 발생 하였다. Error saving credentials: error storing credentials - err: exit status 1, out: `error storing credentials - err: exit status 1, out: `The user name or passphrase you entered is not correct. ~/.docker/config.json { "auths" : { }, "credSstore" : "osxkeychain", "credsStore" : "desktop", "stackOrchestrator" : "swarm" } 다른 사람들과 config.json의 내용 또한 달랐다. 해결 방법 first rm /usr.. 2020. 1. 29.
org.apache.catalina.LifecycleException: Failed to start component JDK8을 사용 중이였는데 오류가 나서 톰캣 7에서 8로 변경 해주니 잘되었다. servlet-api.jar 버전 문제인것 같다.(참고 : https://okky.kr/article/266796) jar를 교체하지 않고 7에서 그냥 8로 톰캣을 교체했다. ㅋㅋ 끝~ 2019. 5. 10.
Spring Boot + Spring Batch 분석_02 2018/10/12 - [OpenSource/Spring Batch] - Spring Boot + Spring Batch 분석_01 저번 분석에서는 Job에 대해서 알아보았습니다. 이제 Step에 대해 알아보도록 하겠습니다.설명하고 있는 소스는 https://spring.io/guides/gs/batch-processing/ 를 참고!// tag::jobstep[] @Bean public Job importUserJob(JobCompletionNotificationListener listener, Step step1) { return jobBuilderFactory.get("importUserJob") .incrementer(new RunIdIncrementer()) .listener(listener) .. 2018. 10. 23.
Spring Boot + Spring Batch 분석_01 주저리 spring boot를 사용하여 spring batch를 해보려는데 막상 spring batch를 잘모르면 제대로 못할것 같은 생각이 들었다. springframework를 spring boot기반으로 해볼때도 마찬가지였다. 구성Job과 Step으로 구성.Job여러개의 Step으로 구성.Step은 ItemReader, ItemProcessor, ItemWriter의 구조이거나 이런 전형적인 구조가 아닐 경우 Tasklet 구조. 분석 2018/09/12 - [OpenSource/Spring Batch] - SpringBatch 예제 에서 처럼 https://spring.io/guides/gs/batch-processing/ 공식 사이트를 살펴보도록 하자. org.springframework.boo.. 2018. 10. 12.
SpringBatch 예제 스프링배치 버전이 낮아서 이참에 스프링부트+스프링배치로 변경해보려고 한다."라스트 제다이"가 아닌 "라스트 스프링" ㅋㅋ 설명에 앞서 주저리를 하자면..요즘 스프링 관련 업무가 없어서..너무 뒤쳐진거 같다..ㅜ.ㅜ..마지막 남은 스프링인가? ㅋㅋ 예제는 아래 사이트를 참고 - https://spring.io/guides/gs/batch-processing/ 결과는 아래와 같다. 위 사이트 내용을 요약해서 보면간단한 배치 서비스를 만들껀데 이 서비스는 csv파일의 데이터를 가져와서 입맛에 맞게 변경 한 뒤 데이터베이스에 저장하는게 목표이다.정형적인 배치서비스를 축약한 내용의 소스인것 같아서 선택했다.데이터를 수집해서 변경 후에 데이터베이스에 저장(insert) or 변경(update)하는 style이 되겠.. 2018. 9. 12.
mac os에서 kafka-console-consumer 사용하기 kafka installbrew로 인스톨 해준다. brew install kafka명령어를 날리려는데 셋팅 된 위치를 모르겠다..ㅋㅋ위치는 요기!! /usr/local/Cellar/kafka/0.11.0.0/bin 명령은!./kafka-console-consumer --zookeeper xxx.xxx.com:1111/acet-kafka --topic ace-taeha 끝~ 2017. 9. 13.
kibana 잘 안띄워 진다면? 확인해보면 좋다! 로컬이 아닌 서버에 kibana를 다운 받고 run을 한 뒤!웹브라우저로 접근을 하려는데..접근이 fail...# Specifies the address to which the Kibana server will bind. IP addresses and host names are both valid values.# The default is 'localhost', which usually means remote machines will not be able to connect.# To allow connections from remote users, set this parameter to a non-loopback address.server.host: "0.0.0.0" 원인은 server.host가 주석처.. 2017. 8. 28.
mesosphere https://mesosphere.github.io/marathon/ Marathon은 Mesosphere의 Datacenter Operating System (DC / OS) 및 Apache Mesos 용 프로덕션 급 컨테이너 오케스트레이션 플랫폼입니다. 특징고 가용성. Marathon은 100 % 가동 시간 동안 리더를 선출 한 액티브 / 패시브 클러스터로 실행됩니다.다중 컨테이너 런타임. Marathon은 Mesos 컨테이너 (cgroup 사용)와 Docker에 대한 first-class 지원을 제공합니다.Stateful apps(상태 보존 형 앱). Marathon은 영구 저장소 볼륨을 응용 프로그램에 바인딩 할 수 있습니다. MySQL 및 Postgres와 같은 데이터베이스를 실행할 수 있으며 .. 2017. 4. 28.
Spring WebFlux toby님이 회사에 오셨다.스프링캠프 2017을 등록 못해서 못갔는데 다행히 좋은 강의를 들을수 있어서 좋았다. 강의자료 : Spring WebFlux 람다식 추가 : 구 Spring web reactive 용도 서비스간 호출이 많은 마이크로서비스 아키텍처에 적합.비동기 - 논블럭킹 개발방식.성능을 뛰어나게 만들겠다.기존 @MVC 방식, 새로운 방식서블릿 스택과 api에서 탈피블록킹, 논블록킹동기, 비동기와는 관점이 다름.내가 직접 제어할 수 없는 대상을 상대하는 방법대상이 제한적임IO멀티 쓰레드 동기화 함수형 스타일의 콜백 방식 스프링 웹 1. 요청 매핑 2. 요청 바인딩 3. 핸들러 실행 4. 핸들러 결과 처리(응답 생성) WebFlux Router Function - 1. 요청매핑 (.route().. 2017. 4. 26.
Study - JPA 소개 주저리 > 보통 Web Project를할 때 MVC 패턴과 더불어 SQL Mapper인 ibatis, mybatis등을 많이 사용하였습니다.지금 회사에서도 mybatis가 사용된 프로젝트들이 대다수 입니다.필드 하나가 추가 되면 dto(vo)를 비롯한 sql등을 수정해주어야하는.. 즉, MVC pattern : View - Controller - Service - Repository(Dao) - SQL까지 전체적인 수정을 요합니다.이런 노가다적이고 복잡한 것을 JPA에서는 객체모델링을 기반으로 풀어나간다고 합니다.db 모델링 기반이 아닌 object 모델링!! 정말 가능한지 한번 알아보겠습니다. JPA는 무엇인가?풀어서 알아보면! Java Persistence Api~~자바 진영의 ORM 기술 표준이다... 2016. 11. 28.
ace-t의 Spring Boot 따라잡기(기본 - freeMarker 연동) 오랜만에 강좌를 쓰네요^0^ 오늘은 freeMarker라는 템플릿을 이용하여 view를 만들어보겠습니다. ㅎㅎ왜 freemarker냐?! 라고 하시면..회사에서 현재 사용하고 있어서라고..후훗 우선 지난번의 강좌를 통해 새롭게 검토하는 겸 따라서 해보겠습니다. 2016/03/22 - [OpenSource/Spring Boot] - ace-t의 Spring Boot 따라잡기(셋팅편)2016/03/22 - [OpenSource/Spring Boot] - ace-t의 Spring Boot 따라잡기(기본 - 헬로우월드찍어보기!)2016/03/23 - [OpenSource/Spring Boot] - ace-t의 Spring Boot 따라잡기(기본 - SourceTree에 연결 및 Repository에 올리기)20.. 2016. 8. 28.
spring boot 환경 나누기(profiles) TEST Code @RunWith(SpringJUnit4ClassRunner.class)@SpringApplicationConfiguration(classes = LineupFantaApplication.class) public class ServerHolderTest { public static final Logger logger = LoggerFactory.getLogger(ServerHolderTest.class); @Autowired ServerHolder serverHolder; // @Before // public void setUp(){} @Test public void testServerProfiles() throws Exception { Map servers = serverHolder.g.. 2016. 7. 18.
log 모니터링을 위한 아키텍처 log 모니터링을 위한 아키텍처 목표는 ansible + elk END 2016. 6. 15.
uses unchecked or unsafe operations. uses unchecked or unsafe operations. 와 같은 워닝이 뜨면 확인해보아야할 것이있다. 아래와 같이 ArrayList 를 하나 선언했다. ArrayList keyArr = new ArrayList(); 위처럼 선언을 하면 uses unchecked or unsafe operations. 라고 warning이 뜬다. ArrayList keyArr = new ArrayList(); 이렇게 해야 경고는 뜨지 않는다. 관련해서 이펙티브 자바책을 한번 보면 좋을것 같다. - 끝 - 2016. 4. 1.
ace-t의 Spring Boot 따라잡기(기본 - 예외처리) 예외처리!예외가 발생하면 그냥 찍기만 하는가?!!! 그것이 예외처리를 한것인가? 예외의 종류는 런타임, 체크드 2가지가 있다카던데.. 어떻게 해야 예외처리 잘했다고 소문이 날것인가?? 우리는 런타임예외가 발생하면 그녀석을 잡아다가! 조치를 취할 것 입니다.1) CommonLineupException.java,CommonLineupResponse.java, ExceptionAdvice.java를 만들어 줍니다. 내용은?CommonLineupException에서는 extends RuntimeException를 상속.생성자를 통해 메시지를 부모생성자에 전달. public CommonLineupException(String message){ super(message); } sourcepublic class Co.. 2016. 3. 24.
ace-t의 Spring Boot 따라잡기(기본 - logging) 참고 : https://docs.spring.io/spring-boot/docs/current/reference/html/howto-logging.htmlSpring Boot의 로깅은 의무적인게 아니라서 commons-logging이 제외 되어있어서 Logback같은 녀석이 필요하면 spring-boot-starter-logging에 의존되어진 common-logging을 사용. (단, web을 사용한다면 spring-boot-starter-web에 포함되어있다고 한다. 굿!)즉, build.gradle의 compile("org.springframework.boot:spring-boot-starter-web")이 있으면 OK! logging의 레벨은 application.properties에서 조정할 수.. 2016. 3. 24.
ace-t의 Spring Boot 따라잡기(기본 - CouchBase 연동하기) 2016/03/23 - [OpenSource/Spring Boot] - ace-t의 Spring Boot 따라잡기(기본 - 외부톰캣 연동하기!) Rest api + CouchBase 연동CouchBase 셋팅은 따로 다루지 않겠습니다.이미 셋팅이 되어있다는 전제하에 진행합니다. 1) build.gradle의 dependency 추가 compile('org.springframework.data:spring-data-couchbase:2.0.0.RELEASE') 를 추가. 2) Controller 작성Controller 작성 후 Service를 호출하는 방식이 보통 MVC 패턴이며, Repository라는 interface를 implements하여 Service에서 구현해 나가는 구조 입니다. 또한 couc.. 2016. 3. 24.
ace-t의 Spring Boot 따라잡기(기본 - 외부톰캣 연동하기!) 2016/03/23 - [OpenSource/Spring Boot] - ace-t의 Spring Boot 따라잡기(기본 - SourceTree에 연결 및 Repository에 올리기) 외부 톰캣을 사용하고자 한다면!! jar -> war로 변경을 해주면 됩니다. 방법은? 1) build.gradle에서 주황색 부분을 변경 jar->warapply plugin: 'war' war {baseName = 'lineup-fanta'version = '0.0.1-SNAPSHOT' } 2) main 소스에 추가 작업 extends SpringBootServletInitializeradd overriding source@Overrideprotected SpringApplicationBuilder configure(S.. 2016. 3. 23.
ace-t의 Spring Boot 따라잡기(기본 - SourceTree에 연결 및 Repository에 올리기) 1. 로컬에 있는 소스를 소스트리에 연동 시킵니다. 2. 아래와 같이 gitignore.io에 접속하여 커밋하면 안되거나 불필요한 액션을 줄이기 위해 ignore할 파일들에 대해서 Generate 해줍니다. https://www.gitignore.io/ /.git/info의 exclude에 위에서 생성되어진 내용을 붙여넣기를 해준다.붙여넣을 내용. # Created by https://www.gitignore.io/api/gradle,intellij ### Gradle ### .gradle build/ # Ignore Gradle GUI config gradle-app.setting # Avoid ignoring Gradle wrapper jar file (.jar files are usually ign.. 2016. 3. 23.
ace-t의 Spring Boot 따라잡기(기본 - 헬로우월드찍어보기!) 2016/03/22 - [OpenSource/Spring Boot] - ace-t의 Spring Boot 따라잡기(셋팅편) 주저리 - 헬로우월드를 찍기전에 스프링의 구조를 한번 생각해볼 필요가 있겠습니다.특히나 팀으로 혹은 2~3명이서 개발을 하는거라면 서로 각자 개발하지말고 먼저 물어보세요~당신은 어떤구조로 개발하였나요? 라구요! 주변에 너무 혼자서만 개발하시는분들이 많기 때문에 각자 자기만의 스타일을 고집한다면..유지보수도 힘들고 커뮤니케이션을 함에 있어서도 힘든 부분이 있으니깐요! 예를 들어 아래와 같이 기본적인 구조로 생각을 하신다는 가정하에 진행해보도록 하겠습니다.api ㄴ config ㄴ controller ㄴ repository ㄴ service 이제 코딩을 한번 해볼 차례 입니다. 헬로우월.. 2016. 3. 22.
반응형