[Linux] docker, git, JDK 등 설치

2023. 5. 11. 17:37Linux

yum 최신화, yum update, mlocate 설치(나중에 편리)

  • yum install epel-release -y
  • yum update -y
  • yum install mlocate -y
  • updatedb
  • systemctl status firewalld
  • systemctl stop firewalld
  • systemctl disable firewalld
  • im /etc/selinux/config
    • selinux 끄기
    • 수정 : SELINUX=disabled
  • getenforce
  • setenforce 0

Docker 설치

# Uninstall old versions
# 혹시 모르니 기존의 오래된 도커를 삭제하는 명령을 수행
yum remove docker \
    docker-client \
    docker-client-latest \
    docker-common \
    docker-latest \
    docker-latest-logrotate \
    docker-logrotate \
    docker-engine

# Set up the repository
yum install -y yum-utils

yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
    
# Install Docker Engine
yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# 도커 시작
systemctl start docker

# 도커 활성화
systemctl enable docker

# 도커 작동 테스트
docker run hello-world

git 설치

  • yum install git -y

JAVA 설치

	yum -y install wget curl

	cd /tmp

	rm -rf /opt/jdk-17

# jdk 17 다운로드
# Linux 64-bit

	wget https://download.java.net/java/GA/jdk17.0.2/dfd4a8d0985749f896bed50d7138ee7f/8/GPL/openjdk-17.0.2_linux-x64_bin.tar.gz


# Linux ARM64
# NCP 에서 CentOS7 을 ARM64 버전으로 설치한 경우에만 이걸로 설치

    wget https://download.java.net/java/GA/jdk17.0.2/dfd4a8d0985749f896bed50d7138ee7f/8/GPL/openjdk-17.0.2_linux-aarch64_bin.tar.gz

	tar -xvf openjdk-17.0.2_linux-x64_bin.tar.gz

	mv jdk-17.0.2/ /opt/jdk-17/

 

프로파일에 JAVA_HOME 변수와 PATH를 설정한다.(bash 쉘 기준)

 

- vi ~/.bashrc

# .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

export JAVA_HOME=/opt/jdk-17 # 추가
export PATH=$JAVA_HOME/bin:$PATH # 추가

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

- source ~/.bashrc

- java -version (jdk 설치 확인)

 


MariaDB 설치

# 컨테이너 실행
docker run \
  --name mariadb_1 \
  -d \
  --restart unless-stopped \
  -e MARIADB_ROOT_PASSWORD=lldj123414 \
  -e TZ=Asia/Seoul \
  -p 3306:3306 \
  -v /docker_projects/mariadb_1/conf.d:/etc/mysql/conf.d \
  -v /docker_projects/mariadb_1/mysql:/var/lib/mysql \
  -v /docker_projects/mariadb_1/run/mysqld:/run/mysqld/ \
  mariadb:latest

보안설정

  • docker exec -it mariadb_1 /usr/bin/mariadb-secure-installation
    • Enter current password for root (enter for none):
      • root 계정 패스워드(lldj123414) 입력
    • Switch to unix_socket authentication [Y/n] n
    • Change the root password? [Y/n] n
    • 나머지 Y

마스터계정(lldj 생성) 및 DB 생성

  • docker exec -it mariadb_1 mysql -u root -p
  • GRANT ALL PRIVILEGES ON *.* TO lldj@'%' IDENTIFIED BY 'lldj123414';
    • # lldj 계정이 아이디와 비번만 알면 어디서든 접속이 가능하도록 설정
  • GRANT ALL PRIVILEGES ON *.* TO lldjlocal@127.0.0.1 IDENTIFIED BY '1234';
    • # lldjlocal 계정이 MariaDB 컨테이너에서만 접속 가능하도록 허용
  • GRANT ALL PRIVILEGES ON *.* TO lldjlocal@'172.17.%.%' IDENTIFIED BY '1234';
    • # lldjlocal 계정이 같은 도커 호스트를 공유하는 컨테이너에서 접속 가능하도록 허용
  • CREATE DATABASE nginx;
    • # NGINX PROXY MANAGER 를 위함
  • exit

외부 MySQL 관리 툴로 접속

  • 접속명 : lldj@PC1
    • 이 이름은 기억하기 쉽도록
  • HOST : site1.com
  • ID : lldj
  • PW : lldj123414
  • PORT : 3306