'분류 전체보기'에 해당되는 글 74건

[참고]www.myorasql.com/jdbc_connect.html

 

jdk(jre) 11을 사용하고 있으며   오라클 버전에 맞게 사용해야함

10g 이상을 사용하고 있다면 maven에 아래와 같이 사용하면됨

 

orai18n<-- 다국어 지원을 하기위해서 필수로 porm.xml에 추가해야함

(1.8 이전 버전에서는 해당사항 없음 java9이상부터 해당됨)

 

<!-- oracle -->
        <dependency>
            <groupId>com.oracle.ojdbc</groupId>
            <artifactId>ojdbc8</artifactId>
            <version>19.3.0.0</version>
        </dependency>
        <dependency>
            <groupId>com.oracle.ojdbc</groupId>
            <artifactId>orai18n</artifactId>
            <version>19.3.0.0</version>
        </dependency>

 

반응형
블로그 이미지

visualp

c#, java

,

docker rabbitmq 설치

Docker 2021. 1. 15. 17:20

최신버전 : 3.8.9-managemen-alpine 설치 ( management가 포함된 버전으로 설치)

[root@localhost /home/rabbitmq]# docker pull rabbitmq:3.8.9-management-alpine
3.8.9-management-alpine: Pulling from library/rabbitmq
801bfaa63ef2: Already exists
5264cbe410b7: Pull complete
f743b4e2cb09: Pull complete
a61458a60935: Pull complete
7ae80d693f5f: Pull complete
45757fe42d4f: Pull complete
abdbac414bcd: Pull complete
f2babd5cc606: Pull complete
73954fbfba96: Pull complete
2e2fede618a7: Pull complete
daa111566ce1: Pull complete
Digest: sha256:0ac9a7f792aa031dff1d133b2d5febfe01a63a9f8aa0d5a9357467e0b8d75a67
Status: Downloaded newer image for rabbitmq:3.8.9-management-alpine
docker.io/library/rabbitmq:3.8.9-management-alpine

 

shell script

docker container stop rabbitmq
docker container rm rabbitmq
docker run --name rabbitmq  --hostname fourfree -d -e TZ=Asia/Seoul -it \
    -p 15672:15672 \
    -p 5672:5672 \
    -v /home/rabbitmq/data:/var/lib/rabbitmq/ \
    -v /home/rabbitmq/logs:/var/log/rabbitmq/ \
    -e RABBITMQ_DEFAULT_USER=admin \
    -e RABBITMQ_DEFAULT_PASS=[your password] \
    rabbitmq:3.8.9-management-alpine \

 

[참고]

iptables를 리눅스에서 이용하고 있다면 기본포트인 15672를 추가해야 하지만

docker는 실서비스가 되고 있는상황에서 포트를 추가하면 오류가 발생함

 

rabiitmq에 접속할 수 있는 도메인을 할당하고 nginx에서 80 -> 15672로 맵핑함

 

ProtocolBound toPort

amqp :: 5672
clustering :: 25672
http :: 15672
http/prometheus :: 15692

amqp 사용하려면 5672 오픈해야함 <-- iptables에서 포트 오픈

 

 

[기본 로그인 아이디/비번] guest/guest -> 쉘스크립트에서 default user, pass 설정 한걸로 로그인 할 수 있음

 로그인화면

반응형

'Docker' 카테고리의 다른 글

centos7 docker-compose 설치하기  (0) 2021.02.05
golang , oracle , Dockerfile 환경 만들기  (0) 2021.01.20
docker , redis설치  (0) 2021.01.14
docker 실행 자동화  (0) 2020.12.11
도커허브에서 빌드된 이미지 다운로드  (0) 2020.12.11
블로그 이미지

visualp

c#, java

,

1. 필수 defendency

 <dependency>
 	<groupId>org.springframework.boot</groupId>
 	<artifactId>spring-boot-starter-data-redis</artifactId>
 </dependency>
       
 <!-- redis -->
 <dependency>
   <groupId>org.springframework.session</groupId>
   <artifactId>spring-session-data-redis</artifactId>
 </dependency>

2. configuration

@Configuration
public class RedisConfig {
    
    @Value("${spring.redis.host}")
    private String host;
    
    @Value("${spring.redis.port}")
    private int port;

    @Value("${spring.redis.password}")
    private String password;

    @Value("${spring.redis.database}")
    private int database;
	
    @Bean
    public RedisConnectionFactory redisConnectionFactory() {
        RedisStandaloneConfiguration redisStandaloneConfiguration = new RedisStandaloneConfiguration();
        redisStandaloneConfiguration.setHostName(host);
        redisStandaloneConfiguration.setPort(port);
        redisStandaloneConfiguration.setPassword(password);
        redisStandaloneConfiguration.setDatabase(database);
        LettuceConnectionFactory lettuceConnectionFactory = new LettuceConnectionFactory(redisStandaloneConfiguration);
        return lettuceConnectionFactory;
    }

    @Bean
    public RedisTemplate<String, Object> redisTemplate() {
        RedisTemplate<String, Object> template = new RedisTemplate<String, Object>();
        template.setConnectionFactory(redisConnectionFactory());
        template.setKeySerializer(new StringRedisSerializer());
        /**
         * 2017-11-15 (고병만)수정
         * 필수처리 key StringRedisSerializer 처리를 해줘야 key앞에 이상한 특수 문자들이 임의로 붙는 상황을
         * 막을 수 있음 ex)\xAC\xED\x00\x05t\x00\x12
         */
        template.setKeySerializer(new StringRedisSerializer());
        return template;
    }
}

 

3. spring에서session 사용방법 다음만 지키자

아래의 코드처럼 session에서 데이터를 가져와서 데이터 가공작업 후 -> 다른 페이지로 redirect하는 상황이 발생한다면

반드시 데이터 가공후 session.setAttribute 해줘야함

당연한거라 생각 할 수 있지만. 일반httpsession같은경우 setAttribute 하지 않더라도 데이터가 유지됩.

 

SinJepmSSVO ss_sinJepmSSVO = request.getSession().getAttribute("ss_sinJepmSSVO") != null ? (SinJepmSSVO) request.getSession().getAttribute("ss_sinJepmSSVO") : null;
        List<CycleDataCompareVO> cycleDataCompareVOS = jmngService.compare_cycle(ss_sinJepmSSVO,sinJepmSSVO);
 //session save
  request.getSession().setAttribute("ss_cycleDataCompareVOS",cycleDataCompareVOS);

 

4. 반드시 vo , dto 등 session에 담을 데이터는 implements Serializable 해야함.

@Data
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = false)
@Builder
public class TermVO implements Serializable {
    //년도
    private String year;

    //텀
    private String term;

    //텀 - 시작일자
    private String stdate;
    //텀 - 종료일자
    private String eddate;

    //텀코드
    private String termcode;

    public String getTermcode() {
        return year + "-" + (Integer.parseInt(term) < 10 ? "0"+term : term);
    }
}

 

5. redist는 프로젝트 초기에 세팅해서 작업을 하는게 좋을듯 . 중간에 끼어넣으려니 그동안 작업했던 vo , session 처리하는 부분들 변경해줘야 되는 귀찮은 일들이 생김.

 

반응형
블로그 이미지

visualp

c#, java

,

docker , redis설치

Docker 2021. 1. 14. 11:02

현제가장 최신 버전인 6.0.10 alpine 기반으로 설치한다.

[버전들 참고]

hub.docker.com/_/redis

docker pull redis:6.0.10-alpine

6.0.10-alpine: Pulling from library/redis
801bfaa63ef2: Pull complete
9a8d0188e481: Pull complete
8a3f5c4e0176: Pull complete
3f7cb00af226: Pull complete
e421f2f8acb5: Pull complete
f41cc3c7c3e4: Pull complete
Digest: sha256:2cd821f730b90a197816252972c2472e3d1fad3c42f052580bc958d3ad641f96
Status: Downloaded newer image for redis:6.0.10-alpine
docker.io/library/redis:6.0.10-alpine

 

redis 환경설정파일 만들기

6.x기준 설정파일

 

아래 설정파일을 참고하면됩니다.

우선 기본적으로 설정해야 될 부분이

requirepass youerpassword <-- 비밀번호 설정 부분

daemonize yes (no->yes)로변경

기본 포트는 6379를 사용한다

설정파일을 참고 하기 바람

raw.githubusercontent.com/redis/redis/6.0/redis.conf

//[한글]설명

redisgate.kr/redis/server/redis_conf_han.php

원하는 위치에 redis.conf라고 설정파일을 생성한다.

 

docker실행 shell script

[root@localhost /home/redis]# vi redis.sh
docker container stop redis
docker container rm redis
docker run --name redis -d -e TZ=Asia/Seoul -it -p 6379:6379 -v /home/redis/conf/redis.conf:/usr/local/redis/redis.conf redis:6.0.10-alpine redis-server /usr/local/redis/redis.conf

 

반드시 iptables에 6379 포트는 오픈되어 있어야 합니다.

반응형

'Docker' 카테고리의 다른 글

golang , oracle , Dockerfile 환경 만들기  (0) 2021.01.20
docker rabbitmq 설치  (0) 2021.01.15
docker 실행 자동화  (0) 2020.12.11
도커허브에서 빌드된 이미지 다운로드  (0) 2020.12.11
도커허브 로그인  (0) 2020.12.11
블로그 이미지

visualp

c#, java

,

3. dockerhub webooks

dwm 2021. 1. 7. 15:24

도커허브에서 maven build 후 dwm으로 완료 메시지를 보냄니다.

 

 

반응형

'dwm' 카테고리의 다른 글

2.배포현황  (0) 2021.01.07
1-프로젝트 관리  (0) 2021.01.07
배포환경 개발하기 -개요  (0) 2021.01.07
블로그 이미지

visualp

c#, java

,

2.배포현황

dwm 2021. 1. 7. 15:23

실서버에 배포완료 후 결과

로그와 함께 제공됩니다.

 

 

반응형

'dwm' 카테고리의 다른 글

3. dockerhub webooks  (0) 2021.01.07
1-프로젝트 관리  (0) 2021.01.07
배포환경 개발하기 -개요  (0) 2021.01.07
블로그 이미지

visualp

c#, java

,

1-프로젝트 관리

dwm 2021. 1. 7. 15:21

최대한 간단하게 

서버 원격지 주소,로그인 아이디, 패스워드 , 실행할 script 등록합니다.

 

반응형

'dwm' 카테고리의 다른 글

3. dockerhub webooks  (0) 2021.01.07
2.배포현황  (0) 2021.01.07
배포환경 개발하기 -개요  (0) 2021.01.07
블로그 이미지

visualp

c#, java

,

[배경]

서버내에서 ninx기반으로 A,B로 나눠서

무중단  배포해야되는 상황

 

[1차]목표

최대한 간단하게 배포하기 위해서 아래와 같은 순서로 배포가 되도록

dwm 프로젝트를 진행하게 되었습니다.

 

[2차]목표

서버에 Exception 로그를 수집하여 담당자에게 slack <-- ㅡmessage 전달하기

 

github 

github.com/visualp/dwm

 

visualp/dwm

dockerhub webhooks and server deploy. Contribute to visualp/dwm development by creating an account on GitHub.

github.com

 

 

[개발환경]

java 11

spring boot

maven

spring data jpa

mariadb

jsch

jslack

shell script

github, dockerhub

bootstrap5 beta

반응형

'dwm' 카테고리의 다른 글

3. dockerhub webooks  (0) 2021.01.07
2.배포현황  (0) 2021.01.07
1-프로젝트 관리  (0) 2021.01.07
블로그 이미지

visualp

c#, java

,