初试Docker on Debian on VirtualBox
一直以来都对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的更多相关文章
- Debian 安装 virtualbox
首先增加源: echo "deb http://download.virtualbox.org/virtualbox/debian stretch contrib" > /e ...
- docker下debian镜像开启ssh, 允许root用密码登录
用的官方python镜像做开发, 暴露端口, 用pycharm ssh进去开发. 忽然发现本来ssh能连上, 但是更了新的python镜像连不上了. 有折腾了一下, 连上了. 主要是python官网镜 ...
- Debian安装VirtualBox增强工具
切换到root用户: apt-get install build-essential 或者 apt-get install gcc make apt-get install dkms apt-get ...
- 初试docker以及搭建mysql on docker
前一阵阅读了google的borg论文,在最后的related works和总结中发现了kubernetes.从论文中了解的kubernetes这个东西很有意思,按照论文所说,它的实现有希望解决an ...
- Docker运行操作系统环境(BusyBox&Alpine&Debian/Ubuntu&CentOS/Fedora)
目前常用的Linux发行版主要包括Debian/Ubuntu系列和CentOS/Fedora系列.前者以自带软件包版本较新而出名:后者则宣称运行更稳定一些.选择哪个操作系统取决于读者的具体需求.同时, ...
- Debian安装Docker
Debian 安装 Docker CE 准备工作 系统要求 Docker CE 支持以下版本的 Debian 操作系统: Stretch 9 Jessie 8 (LTS) Wheezy 7.7 (LT ...
- 如何在Debian 9上安装和使用Docker
介绍 Docker是一个简化容器中应用程序进程管理过程的应用程序.容器允许您在资源隔离的进程中运行应用程序.它们与虚拟机类似,但容器更便携,更加资源友好,并且更依赖于主机操作系统. 在本教程中,您将在 ...
- 如何在 Debian 9 上安装和使用 Docker
Docker 是一个容器化平台,允许您快速构建,测试和部署应用程序,作为便携式,自给自足的容器,几乎可以在任何地方运行. Docker 是容器技术的事实上的标准,它是 DevOps 工程师及其持续集成 ...
- Docker 安装 - Docker 与前端(一)
Docker 是一个开源的容器引擎,可以方便的对容器进行管理.作为一种新兴的虚拟化方式,跟传统的虚拟化方式相比具有众多优势.<Docker 遇见前端>系列文章,旨在记录如何通过 docke ...
随机推荐
- zip 函数
zip 函数,看上去是打包的意思,其实功能是将多个可迭代对象,组合成一个个元组. zip(iter1,iter2) a,b = zip(*zip(iter1,iter2)) a = [1,2,3] b ...
- Powershell应用
- C#与C++通过socket传送结构体
C#服务端: using System; using System.Net.Sockets; using System.Net; using System.IO; using System.Diagn ...
- spring使用Redis自定义前缀后缀名(去掉SimpleKey []+自定义)
spring中自动加上 SimpleKey [] 解决方案 一.自定义后缀名 1.定义类实现KeyGenerator接口 MyKeyGenerator package com.wbg.springRe ...
- Spring mvc实现ex导入导出
依赖架包 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</arti ...
- 不推荐在iOS的浏览器应用上使用click和mouseover
iOS上的Safari也支持click 和mouseover等传统的交互事件,只是不推荐在iOS的浏览器应用上使用click和mouseover,因为这两个事件是为了支持鼠标点击而设计 出来的.Cli ...
- DIAView组态软件笔记
1.为了节省成本,我们往往会在PLC将多个开关量整合到同一个word中,这样关联的变量可以从原有的16个变成现在的一个.这样做带来的麻烦就是需要我们在脚本中自己来解析出数据,通过对2求余(mod 2) ...
- c#数据库访问服务(综合数据库操作)
前面给大家说封装了常用的数据库,并且整理了使用.最近我再次把项目整合了.做成比较完善的服务. 还是重复的说下数据库操作封装. berkeley db数据库,Redis数据库,sqlite数据库. 每个 ...
- 自己花了2天时间,重新整理了个全面的vue2的模板
自己花了2天时间,重新整理了个全面的vue2的模板,基本vue中需要的部分都整理封装好了,希望大家喜欢^ ^.欢迎大家star或者fork呀~,https://github.com/qianxiaon ...
- #leetcode刷题之路7- 整数反转
给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1:输入: 123输出: 321 示例 2:输入: -123输出: -321 示例 3:输入: 120输出: 21 #i ...