docker安装
前提条件
已注册阿里云账号

已创建了至少一台ECS实例。具体步骤,请参见

本教程示例步骤适用于以下ECS实例配置:

实例规格:ecs.g6.large

操作系统:公共镜像Alibaba Cloud Linux 2.1903 LTS 64位

说明 本示例操作命令同样适用于CentOS 7系统。

网络类型:专有网络VPC

IP地址:公网IP

部署Docker
本节主要介绍手动安装Docker的操作步骤

远程连接ECS实例。

依次运行以下命令添加yum源。

更新yum源。

yum -y update

安装epel源。

yum install -y epel-release

清除yum缓存。

yum clean all

列出所有可安装的包。

yum list

安装并运行Docker。

yum install docker-io -y
systemctl start docker

检查安装结果。

docker info

出现以下说明信息则表明安装成功。

阿里ddns在docker中总是重启状态 阿里云 ddns docker_Docker

使用Docker
Docker有以下基本用法:

管理Docker守护进程。

systemctl start docker     #运行Docker守护进程
systemctl stop docker      #停止Docker守护进程
systemctl restart docker   #重启Docker守护进程

管理镜像。本文使用的是来自阿里云仓库的Apache镜像。

docker pull registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5

修改标签。由于阿里云仓库镜像的镜像名称较长,您可以修改镜像标签以便记忆区分。

docker tag registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5:latest aliweb:v1

查看已有镜像。

docker images

强制删除镜像。

docker rmi -f registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5

管理容器。

进入容器。e1xxxxxxxxxe是执行

docker images

命令查询到的ImageId,使用

docker run

命令进入容器。

docker run -it e1xxxxxxxxxe /bin/bash

退出容器。使用exit命令退出当前容器。

run

命令加上

–d

参数可以在后台运行容器,

--name

指定容器命名为apache。

docker run -d --name apache e1xxxxxxxxxe

exit

进入后台运行的容器。

docker exec -it apache /bin/bash

将容器做成镜像,命令的参数说明:

docker commit <容器ID或容器名> [<仓库名>[:<标签>]]

docker commit containerID/containerName repository:tag

为了方便测试和恢复,将源镜像运行起来后,再做一个命名简单的镜像做测试。

docker commit 4c8066cd8**** apachephp:v1

运行容器并将宿主机的8080端口映射到容器里去。

docker run -d -p 8080:80 apachephp:v1

在浏览器输入ECS实例IP地址加8080端口访问测试,出现以下内容则说明运行成功

阿里ddns在docker中总是重启状态 阿里云 ddns docker_运维_02


制作镜像

准备Dockerfile内容。

新建并编辑Dockerfile文件。

vim Dockerfile

按i进入编辑模式,添加以下内容。

FROM apachephp:v1  #声明基础镜像来源
MAINTAINER DTSTACK #声明镜像拥有者
RUN mkdir /dtstact #RUN后面接容器运行前需要执行的命令,由于Dockerfile文件不能超过127行,因此当命令较多时建议写到脚本中执行
ENTRYPOINT ping www.aliyun.com #开机启动命令,此处最后一个命令需要是可在前台持续执行的命令,否则容器后台运行时会因为命令执行完而退出。

按下键盘esc键,输入:wq并按下enter键,保存并退出Dockerfile文件。

构建镜像。

docker build -t webaliyunlinux:v1 .   # . 是Dockerfile文件的路径,不能忽略
docker images                    #查看是否创建成功

运行容器并查看。

docker run -d webaliyunlinux:v1       #后台运行容器
docker ps                        #查看当前运行中的容器
docker ps -a                     #查看所有容器,包括未运行中的
docker logs CONTAINER ID/IMAGE   #如未查看到刚才运行的容器,则用容器id或者名字查看启动日志排错

制作镜像。

docker commit fb2844b6**** dtstackweb:v1 #commit参数后添加容器ID和构建新镜像的名称和版本号。
docker images                    #列出本地(已下载的和本地创建的)镜像

将镜像推送至远程仓库。

默认推送到Docker Hub。您需要先登录Docker,为镜像绑定标签,将镜像命名为Docker用户名/镜像名:标签的格式。最终完成推送。

docker login --username=dtstack_plus registry.cn-shanghai.aliyuncs.com #执行后输入镜像仓库密码
docker tag [ImageId] registry.cn-shanghai.aliyuncs.com/dtstack123/test:[标签]
docker push registry.cn-shanghai.aliyuncs.com/dtstack123/test:[标签]

docker安装oracle
环境简介
centos7.4

Docker version 1.13.1, build 64e9980/1.13.1

oracle安装
拉取Oracle镜像
 

docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

大约有6个G,需要一段时间,打把王者等大约10分钟。安装好后如下图所示:

阿里ddns在docker中总是重启状态 阿里云 ddns docker_Docker_03

下载完成后,查看镜像 

docker images

阿里ddns在docker中总是重启状态 阿里云 ddns docker_Docker_04


这一步完成之后,就说明我们的镜像已经拉取好了 

创建容器
 

docker run -d -p 1521:1521 --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

阿里ddns在docker中总是重启状态 阿里云 ddns docker_docker_05


可以写成shell脚本,下次打开oracle数据库就可以一条命令创建容器。

 

shell脚本如下:

# BEGIN ANSIBLE MANAGED BLOCK
#!/bin/bash
docker rm -f oracle11;
docker run -it -d -p 1521:1521 -v /data/oracle:/data/oracle --name oracle11 registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
# END ANSIBLE MANAGED BLOCK

但为了保存上一次容易的配置值,是不建议写这个shell脚本的,下次打开直接用docker start oracle11命令打开

如果创建成功能会返回容器id

进入镜像进行配置

阿里ddns在docker中总是重启状态 阿里云 ddns docker_Docker_06

 

docker exec -it oracle11g bash

进行软连接

sqlplus /nolog

发现没有该命令,所以切换root用户。

su root

输入密码:helowin

阿里ddns在docker中总是重启状态 阿里云 ddns docker_Docker_07

 

配置ORACLE环境变量
编辑profile文件

vi /etc/profile

在文件最后写上下面内容:

export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2

export ORACLE_SID=helowin

export PATH=$ORACLE_HOME/bin:$PATH
输入:wq保存后,加载环境变量

source /etc/profile

阿里ddns在docker中总是重启状态 阿里云 ddns docker_Docker_08


创建软连接 

ln -s $ORACLE_HOME/bin/sqlplus /usr/bin

切换到oracle 用户

su - oracle

阿里ddns在docker中总是重启状态 阿里云 ddns docker_oracle_09


登录sqlplus并修改sys、system用户密码 

sqlplus /nolog   --登录
conn /as sysdba  --连接数据库
alter user system identified by system;--修改system用户账号密码;
alter user sys identified by system;--修改sys用户账号密码;
create user test identified by test; -- 创建内部管理员账号密码;
grant connect,resource,dba to test; --将dba权限授权给内部管理员账号和密码;
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; --修改密码规则策略为密码永不过期;
alter system set processes=1000 scope=spfile; --修改数据库最大连接数据;

阿里ddns在docker中总是重启状态 阿里云 ddns docker_oracle_10

修改以上信息后,需要重新启动数据库

conn /as sysdba
shutdown immediate; --关闭数据库
startup; --启动数据库
exit:退出软链接

到这里,Oracle的安装与配置就完成了,接下来就用你的navicat试试链接就好了

阿里ddns在docker中总是重启状态 阿里云 ddns docker_运维_11