[oracle-docker@minsvr:/data1/oracle-docker/oradata]$ docker volume ls DRIVER VOLUME NAME local compose_config_files local compose_db local compose_django local django-on-docker_media_volume local django-on-docker_postgres_data local django-on-docker_static_volume local oracle-docker_oradata local qms-on-docker_media_volume local qms-on-docker_postgres_data local qms-on-docker_static_volume local test-volume
[oracle-docker@minsvr:/data1/oracle-docker/oradata]$ docker volume rm test-volume test-volume [oracle-docker@minsvr:/data1/oracle-docker/oradata]$ docker volume ls DRIVER VOLUME NAME local compose_config_files local compose_db local compose_django local django-on-docker_media_volume local django-on-docker_postgres_data local django-on-docker_static_volume local oracle-docker_oradata local qms-on-docker_media_volume local qms-on-docker_postgres_data local qms-on-docker_static_volume
Docker 컨테이너 모두 중지 및 삭제
docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)
$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 9cffbff6ec74 oracle/database:19.3.0-ee "/bin/sh -c 'exec $O 24 hours ago Up 49 minutes (healthy) 0.0.0.0:1521->1521/tcp, :::1521->1521/tcp, 0.0.0.0:5500->5500/tcp, :::5500->5500/tcp ora19c
$ docker ps -a -q 9cffbff6ec74
Docker Image 모두 삭제
docker rmi $(docker images -q)
Docker Image 리스트 확인
[oracle-docker@minsvr:/data1/oracle-docker]$ docker image ls REPOSITORY TAG IMAGE ID CREATED SIZE 192.168.17.83:5000/oracle/database 19.3.0-ee_v2 7a2299cca529 46 minutes ago 6.97GB oracle/database 19.3.0-ee a5a30da1721d 3 weeks ago 6.54GB oraclelinux 7-slim 4133e87bc7fa 2 months ago 132MB apache/ozone-runner 20200625-1 f6874ac36a4c 21 months ago 1.07GB tomcat 8.5.46-jdk8-openjdk 8973f493aa0a 2 years ago 508MB [oracle-docker@minsvr:/data1/oracle-docker]$ docker images -q 7a2299cca529 a5a30da1721d 4133e87bc7fa f6874ac36a4c 8973f493aa0a
우부투(Ubuntu)설치시에 크롬은 기본 설치 되어 있지 않습니다. 기본 설치된 브라우저는 파이어 폭스가 설치 되어있습니다. 이번 포스팅에서는 Ubuntu 20.04.4 LTS 버전에서 크롬을 설치 하는 방법에 대해 알아 보겠습니다. * 우분투 버전 정보 확인 방법 $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.4 LTS Release: 20.04 Codename: focal
우분투 다운로드 (Ubuntu)
단축키(Ctrl+Alt+T) 또는 응용프로그램에서 터미널을 wget 명령을 이용해서 구글 크롬의 최신 .deb package 파일을다운로드 해야합니다.
TNSLSNR for Linux: Version 19.0.0.0.0 - Production System parameter file is /opt/oracle/product/19c/dbhome_1/network/admin/listener.ora Log messages written to /opt/oracle/diag/tnslsnr/4235c03b5d12/listener/alert/log.xml Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1))) Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=1521)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production Start Date 23-FEB-2022 04:49:38 Uptime 0 days 0 hr. 0 min. 0 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /opt/oracle/product/19c/dbhome_1/network/admin/listener.ora Listener Log File /opt/oracle/diag/tnslsnr/4235c03b5d12/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=1521))) The listener supports no services The command completed successfully [WARNING] [DBT-06208] The 'SYS' password entered does not conform to the Oracle recommended standards. CAUSE: a. Oracle recommends that the password entered should be at least 8 characters in length, contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9]. b.The password entered is a keyword that Oracle does not recommend to be used as password ACTION: Specify a strong password. If required refer Oracle documentation for guidelines. [WARNING] [DBT-06208] The 'SYSTEM' password entered does not conform to the Oracle recommended standards. CAUSE: a. Oracle recommends that the password entered should be at least 8 characters in length, contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9]. b.The password entered is a keyword that Oracle does not recommend to be used as password ACTION: Specify a strong password. If required refer Oracle documentation for guidelines. [WARNING] [DBT-06208] The 'PDBADMIN' password entered does not conform to the Oracle recommended standards. CAUSE: a. Oracle recommends that the password entered should be at least 8 characters in length, contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9]. b.The password entered is a keyword that Oracle does not recommend to be used as password ACTION: Specify a strong password. If required refer Oracle documentation for guidelines. Prepare for db operation 중략....................... Completing Database Creation 51% complete 54% complete Creating Pluggable Databases 58% complete 77% complete Executing Post Configuration Actions 100% complete Database creation complete. For details check the logfiles at: /opt/oracle/cfgtoollogs/dbca/ORCLCDB. Database Information: Global Database Name:ORCLCDB System Identifier(SID):ORCLCDB Look at the log file "/opt/oracle/cfgtoollogs/dbca/ORCLCDB/ORCLCDB.log" for further details.
SQL*Plus: Release 19.0.0.0.0 - Production on Wed Feb 23 05:05:33 2022 Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0
SQL> System altered.
SQL> System altered.
SQL> Pluggable database altered.
SQL> PL/SQL procedure successfully completed.
SQL> SQL> Session altered.
SQL> User created.
SQL> Grant succeeded.
SQL> Grant succeeded.
SQL> Grant succeeded.
SQL> User altered.
SQL> SQL> Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0 The Oracle base remains unchanged with value /opt/oracle The Oracle base remains unchanged with value /opt/oracle ######################### DATABASE IS READY TO USE! ######################### The following output is now a tail of the alert.log: ORCLPDB1(3):ALTER DATABASE DEFAULT TABLESPACE "USERS" ORCLPDB1(3):Completed: ALTER DATABASE DEFAULT TABLESPACE "USERS" 2022-02-23T05:05:33.298695+00:00 ALTER SYSTEM SET control_files='/opt/oracle/oradata/ORCLCDB/control01.ctl' SCOPE=SPFILE; 2022-02-23T05:05:33.303320+00:00 ALTER SYSTEM SET local_listener='' SCOPE=BOTH; ALTER PLUGGABLE DATABASE ORCLPDB1 SAVE STATE Completed: ALTER PLUGGABLE DATABASE ORCLPDB1 SAVE STATE
XDB initialized.
Oracle 접속 및 테스트
$ docker exec -it oracle sqlplus sys/oracle@//localhost:1521/ORCLCDB as sysdba
$ docker exec -it oracle sqlplus sys/oracle@//localhost:1521/ORCLCDB as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Wed Feb 23 08:04:55 2022 Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0
SQL> select * from dual;
D - X
SQL> create table TEST(id number, name varchar(100));
Table created.
SQL> insert into TEST values(1,'test');
1 row created.
SQL> commit;
Commit complete.
SQL> select * from TEST;
ID ---------- NAME -------------------------------------------------------------------------------- 1 test
일반 사용자 계정에서 Docker 명령을 수행할수 있도록 권한을 변경하는 방법에 대해 알아 보겠습니다.
$ docker-compose -f docker-compose.test.yml up --build Traceback (most recent call last): File "urllib3/connectionpool.py", line 677, in urlopen File "urllib3/connectionpool.py", line 392, in _make_request File "http/client.py", line 1277, in request File "http/client.py", line 1323, in _send_request File "http/client.py", line 1272, in endheaders File "http/client.py", line 1032, in _send_output File "http/client.py", line 972, in send File "docker/transport/unixconn.py", line 43, in connect PermissionError: [Errno 13] Permission denied
해결 방법
1.sudoers 파일 사용자 계정 추가
visudo -f /etc/sudoers
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
docker_test ALL=(ALL) ALL
2.사용자 계정에 docker 그룹 추가
sudo usermod -aG docker $USER
로컬 시스템 관리자에게 일반적인 지침을 받았으리라 믿습니다.
보통 세가지로 요약합니다:
#1) 타인의 사생활을 존중하십시오.
#2) 입력하기 전에 한 번 더 생각하십시오.
#3) 막강한 힘에는 상당한 책임이 뒤따릅니다.
[sudo] docker_test의 암호:
3.일반사용자 계정재 접속 후Docker(Docker-Compose) 명령 실행
[docker_test@minsvr:/data1/docker_test]$ exit
logout
[root@minsvr:/root]$ su - docker_test
마지막 로그인: 토 9월 18 16:15:02 KST 2021 일시 pts/20
[docker_test@minsvr:/data1/docker_test]$ cd compose/
[docker_test@minsvr:/data1/docker_test/compose]$ ll
합계 16
drwxr-xr-x. 3 docker_test docker_test 4096 9월 18 15:59 .
drwx------. 6 docker_test docker_test 4096 9월 18 15:59 ..
drwxr-xr-x. 2 docker_test docker_test 4096 9월 18 15:58 app
-rw-r--r--. 1 docker_test docker_test 95 9월 18 15:59 docker-compose.test.yml
[docker_test@minsvr:/data1/docker_test/compose]$ docker-compose -f docker-compose.test.yml up --build
Building db
Sending build context to Docker daemon 2.56kB
Step 1/11 : FROM openjdk:8
---> 08121337b7a4
Step 2/11 : MAINTAINER mjk <jungki_min@tmax.co.kr>
---> Using cache
---> a85abd8125dd
Step 3/11 : RUN apt-get update && apt-get install -y libstdc++6 libaio1 libncurses5 vim expect nmap netcat && apt-get clean
---> Using cache
---> cd3f5538bdfd
Step 4/11 : ENV APP_HOME=/home/app
---> Running in 71fc6363b5f2
Removing intermediate container 71fc6363b5f2
---> 41a120bc13f2
<!-- Relative Sizing -->
<p> Relative Sizing </p>
<p><i class="fa-solid fa-coffee fa-2xs"></i> When my six o’clock alarm buzzes, I require a pot of good java.</p>
<p><i class="fa-solid fa-coffee fa-xs"></i> When my six o’clock alarm buzzes, I require a pot of good java.</p>
<p><i class="fa-solid fa-coffee fa-sm"></i> When my six o’clock alarm buzzes, I require a pot of good java.</p>
<p><i class="fa-solid fa-coffee"></i> When my six o’clock alarm buzzes, I require a pot of good java.</p>
<p><i class="fa-solid fa-coffee fa-lg"></i> When my six o’clock alarm buzzes, I require a pot of good java.</p>
<p><i class="fa-solid fa-coffee fa-xl"></i> When my six o’clock alarm buzzes, I require a pot of good java.</p>
<p><i class="fa-solid fa-coffee fa-2xl"></i> When my six o’clock alarm buzzes, I require a pot of good java.</p>
소스가 다운로드되었다면 이제 티스토리 코드블럭에 line number 를 적용해 보겠습니다.
관리자 모드에서 스킨 편집을 통해 다운로드 받은 highlightjs-line-numbers.min.js 파일을 업로드 해주세요 (꾸미기 -> 스킨편집-> html 편집-> 파일 업로드)
업로드 파일 이름
dist/highlightjs-line-numbers.min.js
highlightjs-line-numbers.min.js 파일 업로드
업로드가 완료 되었다면 이제 HTML 소스 코드를 편집해서 highlightjs-line-numbers.min.js 스크립트를 적용 해주면 됩니다.
highlight 소스 삽입 위치는 <head> 와 </head> 사이에 넣습니다.
HTML 스킨 편집
<!-- 코드 블럭 highlight 추가 -->
<script src="./images/highlight.min.js"></script>
<link href="./images/atom-one-dark.min.css" rel="stylesheet">
<script>hljs.initHighlightingOnLoad();</script>
<!-- 코드 블럭 highlight 추가 End-->
<!-- 코드 블럭 line number 추가 -->
<script src="./images/highlightjs-line-numbers.min.js"></script>
<script>hljs.initLineNumbersOnLoad();</script>
<!-- 코드 블럭 line number 추가 End-->
코드 블럭 Line Number 적용 결과 확인
글쓰기 버튼을 누른후 코드 블럭에 코드를 작성합니다.
코드블럭삽입
테스트 코드 블럭
#include <iostream>
int main(int argc, char *argv[]) {
/* An annoying "Hello World" example */
for (auto i = 0; i < 0xFFFF; i++)
cout << "Hello, World!" << endl;
char c = '\n';
unordered_map <string, vector<string> > m;
m["key"] = "\\\\"; // this is an error
return -2e3 + 12l;
}
highlight 가 다운로드되었다면 이제 티스토리 코드블럭에 highlight 를 적용하겠습니다.
관리자 모드에서 스킨 편집을 통해 다운로드 받은 highlight.js 파일을 업로드 해주세요 (꾸미기 -> 스킨편집-> html 편집-> 파일 업로드)
업로드 파일 이름
1.highlight.js , highlight.min.js
2.styles\테마( styles\atom-one-dark.min.css)
* 데모 환경에서 Atom One Dark 를 선택 하셨다면 적용할 스크립트는 atom-one-dark.min.css 가됩니다.
만약 Base16/Apathy 를 선택 하셨다면 styles\base16\apathy.min.css 스크립트를 업로드 하셔서 사용하시면됩니다.
업로드가 완료 되었다면 이제 HTML 소스 코드를 편집해서 highlight 스크립트를 적용 해주면 됩니다.
highlight 소스 삽입 위치는 <head> 와 </head> 사이에 넣습니다.
<!-- 코드 블럭 highlight 추가 -->
<script src="./images/highlight.min.js"></script>
<link href="./images/atom-one-dark.min.css" rel="stylesheet">
<script>hljs.initHighlightingOnLoad();</script>
<!-- 코드 블럭 highlight 추가 End-->
atom-one-dark.min 테마 코드 블럭 적용
글쓰기 버튼을 누른후 코드 블럭에 코드를 작성합니다.
코드블럭삽입
코드블럭 적용후&nbsp;
헉! 이건 내가 원했던 코드 블럭 테마가 아닙니다.
이런 이유는 티스토리에서 기본 제공하는 Synctax Highlight 가 적용 되었기 때문입니다.