一直以来都对Docker如雷贯耳,很想尝试一下但都被各种忙给耽误了,最近由于项目调试,需要安装 Oracle 和 SQL Server 数据库,但又不想安装到本机系统里,于是下决心啃一下docker这块骨头。

操作系统是装在本机VirtualBox里的Debian jessie,根据Docker官方网站的文档进行安装和测试,倒也一切顺利。

到了docker pull的时候由于国外的源很慢,搜了一下,果然有国内的源,我选择了阿里云的,使用很方便,推荐。

一点个人的心得分享,供大家参考:(只了解了一点皮毛,感觉这玩意确实方便)

# Oracle XE 11g 容器配置(8521端口,SSH用8522端口)
# 数据库连接:localhost:,sid:xe,账号:system(SYS或SYSTEM也行),密码:oracle
# SSH连接:ssh root@localhost -p 密码:admin
docker run -d -p : -p : --name oracle- wnameless/oracle-xe-11g
# Oracle XE 11g 容器配置(默认端口,SSH默认端口,数据保存在宿主/var/data/oracle,允许远程连接)
docker run -d -p : -p : --name oracle- -e ORACLE_ALLOW_REMOTE=true wnameless/oracle-xe-11g # wnameless版本无法绑定本地卷,sath89版可以绑定本地卷,但是不绑定product目录,会丢失两个包含hostname的*.ora配置文件
# sath89版本好像也不支持ssh
docker run -d -p : -p : --name orcl-xe- -v /var/data/orcl-xe-:/u01/app/oracle sath89/oracle-xe-11g
docker run -d -p : -p : --name orcl-xe- -v /var/data/orcl-xe-:/u01/app/oracle sath89/oracle-xe-11g

# -d 表示在后台运行容器并返回容器的ID,-i 表示以交互方式运行容器(常与-t联用),-t 表示为容器重新分配一个伪输入终端
# -p 端口1:端口2 表示外部端口1映射到容器内部对应的端口2,我们在外部使用端口1就可以访问到容器内的服务了
# -v 本机路径:容器内路径 表示把本机目录映射到容器内的指定目录,在容器内操作指定目录其实是操作本机目录,可以保证删除容器后,需要保留的文件还在 # SQL Server for Linux
docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=设置一个SA密码" -p : -v /var/data/mssql-:/var/opt/mssql --name mssql- -d microsoft/mssql-server-linux # 进入实例的bash
docker exec -it 实例名 bash # docker 的-v和volume只支持本机目录,如果是VirtualBox共享目录挂载的用-v不行,试的mssql直接退出,oracle不退出但也不能连接

个人建议:不直接在VirtualBox里操作,复制、粘贴都不方便,不如在WSL里用ssh连接到Debian再操作方便!

初试Docker on Debian on VirtualBox的更多相关文章

  1. Debian 安装 virtualbox

    首先增加源: echo "deb http://download.virtualbox.org/virtualbox/debian stretch contrib" > /e ...

  2. docker下debian镜像开启ssh, 允许root用密码登录

    用的官方python镜像做开发, 暴露端口, 用pycharm ssh进去开发. 忽然发现本来ssh能连上, 但是更了新的python镜像连不上了. 有折腾了一下, 连上了. 主要是python官网镜 ...

  3. Debian安装VirtualBox增强工具

    切换到root用户: apt-get install build-essential 或者 apt-get install gcc make apt-get install dkms apt-get ...

  4. 初试docker以及搭建mysql on docker

    前一阵阅读了google的borg论文,在最后的related works和总结中发现了kubernetes.从论文中了解的kubernetes这个东西很有意思,按照论文所说,它的实现有希望解决an ...

  5. Docker运行操作系统环境(BusyBox&Alpine&Debian/Ubuntu&CentOS/Fedora)

    目前常用的Linux发行版主要包括Debian/Ubuntu系列和CentOS/Fedora系列.前者以自带软件包版本较新而出名:后者则宣称运行更稳定一些.选择哪个操作系统取决于读者的具体需求.同时, ...

  6. Debian安装Docker

    Debian 安装 Docker CE 准备工作 系统要求 Docker CE 支持以下版本的 Debian 操作系统: Stretch 9 Jessie 8 (LTS) Wheezy 7.7 (LT ...

  7. 如何在Debian 9上安装和使用Docker

    介绍 Docker是一个简化容器中应用程序进程管理过程的应用程序.容器允许您在资源隔离的进程中运行应用程序.它们与虚拟机类似,但容器更便携,更加资源友好,并且更依赖于主机操作系统. 在本教程中,您将在 ...

  8. 如何在 Debian 9 上安装和使用 Docker

    Docker 是一个容器化平台,允许您快速构建,测试和部署应用程序,作为便携式,自给自足的容器,几乎可以在任何地方运行. Docker 是容器技术的事实上的标准,它是 DevOps 工程师及其持续集成 ...

  9. Docker 安装 - Docker 与前端(一)

    Docker 是一个开源的容器引擎,可以方便的对容器进行管理.作为一种新兴的虚拟化方式,跟传统的虚拟化方式相比具有众多优势.<Docker 遇见前端>系列文章,旨在记录如何通过 docke ...

随机推荐

  1. react 开发中的问题简记

    1.什么时候用props 什么时候用state ? 不能使用props:当页面组件存在URL跳转问题时候,原因:若单独刷新,他会报错,拿不到前面的数据: 使用props场景:当组件为页面组件的一部分即 ...

  2. docker-1-简介

    Dockers的出现: 一款产品从开发到上线,从操作系统,到运行环境,再到应用配置.作为开发+运维之间的协作我们需要关心很多东西, 这也是很多互联网公司都不得不面对的问题,特别是各种版本的迭代之后,不 ...

  3. .net打印

    <input type="button" onclick="javascript:printit()"></input>//打印整个ht ...

  4. 华为交换机SSH配置

    设备:S5700 一.在本地设备服务端生成秘钥对 [Huawei]rsa local-key-pair create 二.配置VTY [Huawei]user-interface vty 0 4进入虚 ...

  5. 关于readonly的一些说明

    readonly在代码中只能在字段初始化器和构造函数中赋值,并不是说readonly只能赋值一次,超出这个范围以后readonly就不能通过代码修改了,但是还是可以用反射来修改,readonly仅仅是 ...

  6. Grunt中批量无损压缩图片插件--Grunt-contrib-imagemin

    Photoshop 切出的图片,无论是 PNG 还是 JPEG/JPG 格式,都含有许多相关信息,又或多余的颜色值,这些信息和颜色值,对网页前端并没有用处,反而增加图片大小,所以 Google Pag ...

  7. iOS- CoreData 数据库管理利器!

    1.前文 上次用SQLite3实现了数据管理,这次准备用CoreData来实现. Core Data 是iOS SDK 里的一个很强大的框架,允许程序员以面向对象的方式储存和管理数据.使用Core D ...

  8. 协作开发中常用的Git命令小结

    先提一下最基础的git命令用法: git clone   从远端克隆到本地仓库 git add . (注意add和. 之间有一个空格)将全部改动添加到暂存区 git checkout xxx 撤销更改 ...

  9. 『C++』Temp_2018_12_06

    #include <iostream> #include <string> using namespace std; class Type{ public: string Na ...

  10. eclipse创建maven项目及Javaweb项目

    1.开启eclipse,右键new——>other,如下图找到maven project 2.选择maven project,显示创建maven项目的窗口 3.在搜索框中搜索“web”,选择,n ...