2017年9月29日 星期五

Docker[Centos 6.9 + GNOME Deskop + XRDP]

Dockerfile
FROM centos:6

RUN yum -y install wget
RUN yum install http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm -y
RUN yum -y install xsetroot
RUN yum -y install xterm
RUN yum -y install twm
RUN yum groupinstall -y 'X Window System'
RUN yum groupinfo "Desktop" "Desktop Platform" "General Purpose Desktop"
RUN yum -y groupinstall "Desktop"
RUN yum -y install xrdp tigervnc-server

EXPOSE 22
EXPOSE 3389

RUN groupadd oinstall
RUN groupadd dba
RUN groupadd oper
RUN groupadd asmadmin
RUN useradd -g oinstall -G dba,oper,asmadmin oracle

RUN mkdir -p /usr/local/oracle /usr/local/oraInventory   /usr/local/oradata/
RUN chown -R oracle:oinstall /usr/local/oracle /usr/local/oraInventory   /usr/local/oradata/
RUN chmod -R 775 /usr/local/oracle
RUN chmod -R 775   /usr/local/oraInventory
RUN chmod -R 775   /usr/local/oradata/
RUN LANG=en_US.UTF-8

RUN echo VNCSERVERS='"3:oracle"'>>/etc/sysconfig/vncservers
RUN echo VNCSERVERARGS[3]='"-geometry 800x600 -nolisten tcp -localhost"'>>/etc/sysconfig/vncservers
RUN echo "oracle:oracle" | /usr/sbin/chpasswd
RUN mkdir -p /home/oracle/.vnc
RUN echo oracle|vncpasswd -f>/home/oracle/.vnc/passwd
RUN chown oracle:oinstall /home/oracle/.vnc
RUN chown oracle:oinstall passwd
RUN chkconfig xrdp on
RUN chkconfig vncserver on


清除image
 
sudo docker ps -a -q | xargs -n 1 -I {} sudo docker rm -f {} && docker rmi mylinux:v1
Build image mylinux:v1
 
sudo docker build -t="mylinux:v1" .
啟動 container x1, port 3389-->3389
 
docker run -it --privileged -d -v=/home/user/centos6_9_docker:/home/user/folder  --net=bridge --name  x1  -p 172.20.10.5:3389:3389 "mylinux:v1"
host 進入container x1
 
docker attach x1
切換至 oracle, 設定 vnc server password
 
su oracle
vncpasswd
exit
回到 root, 啟動 vnc server及 xrdp
 
service vncserver restart
service xrdp restart
測試連線 to container x1
 
用 windows mstsc, 遠端連至 172.20.10.5
用 oracle/oracle登入即可

2017年9月28日 星期四

第一支Dockerfile, alpine 3.5 + httpd

Dockerfile
FROM gliderlabs/alpine:3.5
RUN apk add --update openrc
RUN apk add --update openssh
RUN ssh-keygen -f /etc/ssh/ssh_host_rsa_key -N '' -t rsa &&\  
ssh-keygen -f /etc/ssh/ssh_host_dsa_key -N '' -t dsa &&\
ssh-keygen -f /etc/ssh/ssh_host_ecdsa_key -N '' -t ecdsa &&\
ssh-keygen -f /etc/ssh/ssh_host_ed25519_key -N '' -t ed25519

RUN sed -i "s/UsePrivilegeSeparation.*/UsePrivilegeSeparation no/g" /etc/ssh/sshd_config &&\
    sed -i "s/UsePAM.*/UsePAM no/g" /etc/ssh/sshd_config && \
 sed -i "s/PermitRootLogin.*/PermitRootLogin yes/g" /etc/ssh/sshd_config &&\
 sed -i "s/#PermitRootLogin prohibit-password/PermitRootLogin yes/g" /etc/ssh/sshd_config &&\
 sed -i "s/#Port 22/Port 22/g" /etc/ssh/sshd_config

EXPOSE 22
 
RUN rc-update add sshd &&\
 mkdir -p /run/openrc/ && \
 touch /run/openrc/softlevel 
 

CMD ["/bin/sh /etc/init.d/sshd start"]
清除image
 
sudo docker ps -a -q | xargs -n 1 -I {} sudo docker rm -f {} && docker rmi mylinux:v1
Build image mylinux:v1
 
sudo docker build -t="mylinux:v1" .
啟動 container x1, port 1022-->22
 
docker run -it --privileged -d -v=/home/user/centos6_9_docker:/home/user/folder  --net=bridge --name  x1  -p 1022:22 "mylinux:v1"
host 進入container x1
 
docker attach x1
container x1中啟動 sshd, 並更改root password
 
/etc/init.d/sshd start
passwd
測試連線 to container x1
 
ssh root@hostip -p 1022

2017年9月18日 星期一

安裝OracleDB前置作業

cd /etc/yum.repos.d
wget http://public-yum.oracle.com/public-yum-ol6.repo
wget ftp://ftp.icm.edu.pl/vol/rzm6/linux-scientificlinux/obsolete/58/x86_64/sites/Fermi/updates/fastbugs/pdksh-5.2.14-37.el5_8.1.x86_64.rpm
yum install -y --nogpgcheck pdksh-5.2.14-37.el5_8.1.x86_64.rpm
yum install -y --nogpgcheck binutils-2.*
yum install -y --nogpgcheck compat-libstdc++-33*
yum install -y --nogpgcheck compat-libstdc++-33*.i386.rpm
yum install -y --nogpgcheck elfutils-libelf*
yum install -y --nogpgcheck gcc-4.*
yum install -y --nogpgcheck gcc-c++-4.*
yum install -y --nogpgcheck glibc-2.*
yum install -y --nogpgcheck glibc-common-2.*
yum install -y --nogpgcheck glibc-devel-2.*
yum install -y --nogpgcheck glibc-headers-2.*
yum install -y --nogpgcheck libaio-0.*
yum install -y --nogpgcheck libaio-devel-0.*
yum install -y --nogpgcheck libgomp-4.*
yum install -y --nogpgcheck libgcc-4.*
yum install -y --nogpgcheck libstdc++-4.*
yum install -y --nogpgcheck libstdc++-devel-4.*
yum install -y --nogpgcheck make-3.*
yum install -y --nogpgcheck sysstat-7.*
yum install -y --nogpgcheck unixODBC-libs*
yum install -y --nogpgcheck unixODBC-2.*
yum install -y --nogpgcheck unixODBC-devel-2.*
yum install -y --nogpgcheck numactl-devel-*
yum install -y --nogpgcheck sysstat

mkdir -p /usr/local/oracle /usr/local/oraInventory   /usr/local/oradata/
chown -R oracle:oinstall /usr/local/oracle /usr/local/oraInventory   /usr/local/oradata/
chmod -R 775 /usr/local/oracle 
chmod -R 775   /usr/local/oraInventory 
chmod -R 775   /usr/local/oradata/
LANG=en_US.UTF-8

2017年9月17日 星期日

Centos 中文

安裝中文語言包
yum groupinstall chinese-support
設定語系
/etc/sysconfig/i18n
#LANG="zh_TW.UTF-8"

LANG="zh_TW.Big5"
SUPPORTED="zh_TW.Big5:zh_TW.UTF-8:zh_TW:zh:en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"

2017年9月15日 星期五

Centos Hyper-V 網路雜難排解

eth0 不見了 , 又無法連上外網
 rm /etc/udev/rules.d/70-persistent_net.rules
只啟動 NetworkManager
chkconfig --level 35 NetworkManager on
chkconfig --level 0123456 network off
重新啟動
init 6

2017年9月4日 星期一

解決 Pipework Object "netns" is unknown, try "ip help". 錯誤

加上來源至 rdo.repo檔中(此為新增檔案)
# vi /etc/yum.repos.d/rdo.repo
[openstack-kilo]
name=OpenStack Kilo Repository
baseurl=https://repos.fedorapeople.org/repos/openstack/EOL/openstack-icehouse/epel-6/
skip_if_unavailable=0
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-kilo
更新 iproute至 2.6.32-130
[root@docker user]# yum update iproute -y
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Update Process
Loading mirror speeds from cached hostfile
 * base: ftp.ksu.edu.tw
 * epel: mirror01.idc.hinet.net
 * extras: ftp.ksu.edu.tw
 * updates: ftp.ksu.edu.tw
openstack-kilo                                                                                     | 2.9 kB     00:00    
openstack-kilo/primary_db                                                                          | 883 kB     00:04    
Resolving Dependencies
--> Running transaction check
---> Package iproute.x86_64 0:2.6.32-54.el6 will be updated
---> Package iproute.x86_64 0:2.6.32-130.el6ost.netns.2 will be an update
--> Finished Dependency Resolution

Dependencies Resolved

==========================================================================================================================
 Package               Arch                 Version                                    Repository                    Size
==========================================================================================================================
Updating:
 iproute               x86_64               2.6.32-130.el6ost.netns.2                  openstack-kilo               367 k

Transaction Summary
==========================================================================================================================
Upgrade       1 Package(s)

Total download size: 367 k
Downloading Packages:
iproute-2.6.32-130.el6ost.netns.2.x86_64.rpm                                                       | 367 kB     00:01    
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Updating   : iproute-2.6.32-130.el6ost.netns.2.x86_64                                                               1/2
  Cleanup    : iproute-2.6.32-54.el6.x86_64                                                                           2/2
  Verifying  : iproute-2.6.32-130.el6ost.netns.2.x86_64                                                               1/2
  Verifying  : iproute-2.6.32-54.el6.x86_64                                                                           2/2

Updated:
  iproute.x86_64 0:2.6.32-130.el6ost.netns.2                                                                            

Complete!