레이블이 docker인 게시물을 표시합니다. 모든 게시물 표시
레이블이 docker인 게시물을 표시합니다. 모든 게시물 표시

Windows Docker 설치 with R 과 Rstudio

 windows에서 linux 기반의 R 을 설치 해도 일반 linux 기반의 R의 잘 돌아 간다.  

특히 요새 윈도우 버전에 업그레이드 되면서,  계정이름이 한글로 된 학교 사용자들이Windows R을 사용할때 아래와 같은 문제가 발생 된다.   


Warning message:

In normalizePath(path.expand(path), winslash, mustWork) :

  path[1]="C:/Users/???/Documents": 파일 이름, 디렉터리 이름 또는 볼륨 레이블 구문이 잘못되었습니다

keras Docker 기본 패키지 이미지 프로세싱용 tensorflow 2.4.3

Docker 이미지 프로세서 개발 환경 구축을 위해서는 아래와 같이 구성 되어져야 합니다.  

1. tenosrflow 2.4.3 버전 일 때 의 최적화

# Random precessing
import numpy as np
import pandas as pd
import random ,os, csv ,re
from glob import glob

# Make Image
import cv2
from PIL import Image
import matplotlib.pyplot as plt

# default load
import tensorflow as tf
from tensorflow.keras.utils import to_categorical

#impage preprocessing
from tensorflow.keras.preprocessing import image as image_utils
from tensorflow.keras.preprocessing.image import(ImageDataGenerator) 
from tensorflow.keras.preprocessing.text import(text_to_word_sequence)

#impage preprocessing
from tensorflow.keras import layers
from tensorflow.keras.models import(Model, load_model)

# LabelEncoder 
from sklearn.preprocessing import LabelEncoder

# keras models
from tensorflow.keras.layers import (
    BatchNormalization, SeparableConv2D, MaxPooling2D, Activation, 
    Flatten, Dropout, Dense , Input
)
# Keras Applications
from tensorflow.keras.applications import(ResNet50)

rdmkyg/rstuido Docker ubunt 20.04 설치 부터, 컨테이너 올리기

Ubuntu 20.04 도커는 가상 환경에서 어떠한 OS에서도 같이 작동 됩니다. 따라서 교육용이나, 아니면, 개발 테스트 용으로 매우 적합 하게 구성 되어 있습니다.

  1. Ubuntu 20.04 Docker 설치


  • 도커 설치전 업데이트 합니다.
  •     $ sudo apt update

  • docker GPG키 및 저장 소를 추가 하기 위해서 crul을 설치 합니다.
  •     $ sudo apt-get install -y ca-certificates curl software-properties-common apt-transport-https gnupg lsb-release

  • GPG 키 인증
  •     curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

  • repository를 추가 합니다.
  •     echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null


  • 도커 엔진을 설치 합니다.
  •     $ sudo apt update
        $ sudo apt-get install docker-ce

  • 도커 버전을 확인 합니다.
  •     $ sudo apt update


  2. Docker 이미지 위치 바꾸기


  • Docker 이미지 디렉토리를 변경 합니다.
  •     $ mkdir /home/dockerImages/

  • docker.servide 파일을 수정 하여, 위치를 바꾸어 줍니다.
  •     $ vi /lib/systemd/system/docker.service

  • 14번째 라인에서 패스를 바꾸어 줍니다.
  • ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock 
    --data-root=
    home/dockerImages/
  • 서비스를 중지후 다시 시작 합니다.
  •     $service docer stop
        $service docer stop
        $service docker status
        $service docker start
        $service docker status

  3. Docker UI 관리툴 설치


이건은 바로 디렉토리를 만들어서, 이미지까지 도커허브에서 Pull 한 다음 컨테이너에 올리는 것입니다.
  • 도커 디렉토리 만듭니다.
  •     $ sudo mkdir -p /var/portainer/data

  • 서비스를 도크 허브에서 Pull 합니다.
  •     $ docker run -d -p 9000:9000 --name=portainer --restart=unless-stopped -v /var/run/docker.sock:/var/run/docker.sock -v /var/portainer/data:/data portainer/portaine

  4. rstudio 도커 실행 하기


이건도 마찮가지로, Dock hub 에서 바로 Pull 해서 컨테이너 까지 올리는 것 입니다.
    $ docker run -d -p -v "$(realpath ~/work/rsutido1):/home/rstudio 2201:22 -p 8787:8787 -e PASSWORD=passwd --name my-rstudio-ssh rdmkyg/rstudio.ssh

참고로 빨간색으로 되어 있는 것은 매번 실행 할때 마다 바꾸는 것입니다.

이것과 관련 하여 자세한 내용은 아래의 홈페이지를 참고 하시면 됩니다. 


패키지 관련 사이트 
install.packages("doMC")
‘/usr/local/lib/R/site-library’의 위치에 패키지(들)을 설치합니다.
(왜냐하면 ‘lib’가 지정되지 않았기 때문입니다)
URL 'https://packagemanager.rstudio.com/cran/__linux__/focal/latest/src/contrib/doMC_1.3.8.tar.gz'을 시도합니다
Content type 'binary/octet-stream' length 167194 bytes (163 KB)
==================================================
downloaded 163 KB

* installing *binary* package ‘doMC’ ...
* DONE (doMC)

The downloaded source packages are in
‘/tmp/RtmpWtvZrH/downloaded_packages’



NVIDIA-GPU Docker 설치 RTX 3080, Ubuntu 20.04 환경

Docker를 활용 한다는 것은 시스템 세팅에 있어서, 어느 누군가가 만들어 놓은 것을 잘 가져가 쓰는 것과 같습니다. 지금까지는 직접 서버에 세팅 해서 직접 하였지만, 지금은 Docker 환경에서 이를 수행 하려고 합니다. 지금 시스템 사양은 아래와 같습니다.

  1. 시스템 사양


시스템 사양은 아래와 같습니다.
  • CPU : I7-8700
  • MEMORY : SAMSUNG 64GB
  • SSD: 1TB
  • GPU : NVIDIA RTX3080


  •   2. NVIDA CUDA GPU 설치


    Ubuntu 20.04 에서는 Nvidia CUDA 드라이버가 설치 되어 있습니다. 하지만 CUDA 버전을 설치 하는 것이 결정되어 있지 않습니다. 그래서 아래와 같이 미리 GPU를 삭제 하여야 합니다.

  • 기존에 설치된 nvidia 와 cuda 제거
  •   $ sudo apt-get remove --purge '^nvidia-.*'
      $ sudo apt-get autoremove --purge 'cuda*'

  • CUDA TOOLKit Install
  •   $sudo apt install nvidia-cuda-toolkit

  • 쿠다 버전 확인
  •   $ nvcc -V

  • 설치 가능한 버전 체크
  •   $ ubuntu-drivers devices




  • CUDA 버전 설치
  •   $ sudo apt install nvidia-driver-510


    그리고  재시작 합니다.

     

     3. NVIDIA DOCKER 이미지 설치


     향후 특정 사용자가  Docker 를 사용하게 하려면,   사용자를 추가 하여야 합니다. 
      $sudo usermod -aG docker $USER 

    그리고 재시작 해야 합니다.   

     Nvidia-docker 설치는 아래 홈페이지에 직접 접속 하셔서 설치 하셔야, 놓치지 않고 정확하게 설치 할 수 있습니다.
                                        NVIDA Docker 설치 사이트
    위의 링크와같이 설치 하였다면, Docker 까지 같이 설치 되었을 것입니다.
     

     4. Nvidia 이미지내 명령 실행


      아래와 같이 명령어를 차례대로 수행 하시면, Docker 실행 되는 여부와 CUDA를 실행 하기 위한 Path도 지정 됩니다.
      $ sudo nvidia-docker run --rm hello-world
      $ apt-cache madison nvidia-docker2 nvidia-container-runtime
      $ sudo docker run -it nvidia/cuda:11.0-base


     5. Nvidia Docer image 실행


      $ sudo docker run -it --rm --runtime=nvidia -v $(realpath ~/Dropbox):/tf/notebooks -p 8888:8888 tensorflow/tensorflow:2.4.3-gpu-jupyter


    위와 같이 명령어를 실행 하였을때,  Docker에서는 이미지 다운(pull) 하게 되면서,  설치 후 시동이 됩니다.    여기에서  URL 상에 토큰 Key 가 들어 있으니 참고 하면 됩니다. 


     도커명령어 중에서 가장 중요한 것은 포트 입니다.  포트를 지정 하지 않으면,  바깥에서 사용할 수 없습니다. 


    만약에 윈도우즈 Docker에서  CPU 전용으로 실행 시키려면 아래와 같이 하여야 합니다.  
    > docker run -it --rm  -v "E:\Dropbox:/tf/notebooks" -p 8888:8888 tensorflow/tensorflow:2.4.3-jupyter


    ubunt docker 설치 r&rstudio 개발 환경 pull과 push

     doker의 기본적인 설명이다.  처음 부터 끝까지 간단하게 기록한다.    

    이것대로 따라 하면,  나름대로 성과는 있을 것이다.   맨 처음 부터 Dockerfile을 많이 핸들링 하지 말고,   다른 사람들이 만들어 놓은 도커 이미지를 활용 하는 것도 하나의 방법이다. 


    1. Docker 환경 설치 

    # 리눅스 커널이 최소 3.1 이상이어야 함
    $ uname -r
    5.13.0-30-generic

    css cheat sheet 클래스 선택자, margin(마진), display , center 조정 간단한 구성 요소

     앞에서는 html의 간단한 sheet를 소개 하였습니다.   html은  주로 골격을 나타나는 것이라, 디자인을 하는데는 css로 하여야 합니다.  아래 코드와 같이 css 관련 하여 매우 간단하게 코딩 하겠습니다.  body 부분의 css 코딩  ...