千家信息网

如何使用Docker创建环境

发表于:2024-11-17 作者:千家信息网编辑
千家信息网最后更新 2024年11月17日,本篇内容介绍了"如何使用Docker创建环境"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!环境准备硬
千家信息网最后更新 2024年11月17日如何使用Docker创建环境

本篇内容介绍了"如何使用Docker创建环境"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

环境准备

硬件要求:内存:>=4G,硬盘:>=20G,网络畅通
系统要求:Centos6.x,开启SSH,推荐使用Docker,也可使用实体机或虚拟机(Vmware、Virtualbox或Hyper-V)
基本环境:安装完成 JDK8、Scala2.10.x,MySQL、Mongo

1. 使用Docker创建环境(推荐/可选)

如您使用的是实体机或虚拟机请忽略此操作。

  • 下载Docker

Linux直接使用包管理工具安装(Centos6及以下版本安装比较麻烦), Windows或Mac使用Docker toolbox安装(已在资源列表中)

  • 添加镜像

从官方仓库安装:

# 下载scala基础镜像docker pull gudaoxuri/scala_2.10# 下载mysql镜像docker pull mysql# 下载Mongo镜像docker pull mongo

如网络过慢可使用资源列表中已下载的镜像安装:

# 从本地添加scala基础镜像docker load -i /images/scala_2.10_image.tar# 从本地添加mysql镜像docker load -i /images/mysql_image.tar# 从本地添加mongo镜像docker load -i /images/mongo_image.tar
  • 创建容器

# 创建mysql容器,开放3306端口,用户名root,密码123456docker run --name mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql# 创建mongo容器,开放27017端口,无需认证docker run --name mongo -p 27017:27017 -d mongo# 创建scala基础容器,开放大数据服务需要的几个重要端口docker run --name bd-lab -h bd -d \     -p 2181:2181 \     -p 6066:6066 \     -p 7077:7077 \     -p 8088:8088 \     -p 8041:8041 \     -p 19888:19888 \     -p 60010:60010 \     -p 60030:60030 \     -p 4040:4040 \     -p 8080:8080 \     -p 8081:8081 \     -p 9000:9000 \     -p 7203:7203 \     -p 9092:9092 \     -p 50010:50010 \     -p 50070:50070 \     -p 50075:50075 \     -p 10000:10000 \     -p 28081:28081 \     -p 222:22 \     -v /c/Users/i/docker_data/bd-lab:/opt/res \     gudaoxuri/scala_2.10

容器说明

gudaoxuri/scala_2.10镜像开放了SSH服务,用户名root,密码123456,端口号222
-v表示添加数据映射,此处用于获取宿主机是已下载的框架包。


后续环境使用docker容器,如无特殊说明所使用容器均基于gudaoxuri/scala_2.10镜像。

2. 使用Virtual box创建环境(可选)

  • 下载CentOS6.x

    http://mirrors.163.com/centos/6.7/isos/x86_64/CentOS-6.7-x86_64-minimal.iso
  • 安装CentOS到Virtual box


注意事项

  • 网络使用网桥模式

  • 选择中文(避免乱码)

  • 主机名使用bd

  • IP及DNS安装完成后再配置

  • 安装完成,配置网络

vi /etc/sysconfig/network-scripts/ifcfg-eth0

ONBOOT=yesBOOTPROTO=staticIPADDR=NETMASK=GATEWAY=
ifup eth0

vi /etc/resolv.conf

nameserver 180.76.76.76nameserver 8.8.8.8

测试

ifconfigping www.baidu.com
  • 安装必须的工具

# 测试环境,可以关闭防火墙chkconfig iptables offservice iptables stopyum install -y wget# 安装javawget -P /opt/env/ --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie"  http://download.oracle.com/otn-pub/java/jdk/8u60-b27/jdk-8u60-linux-x64.tar.gztar -xzf /opt/env/jdk-8u60-linux-x64.tar.gz -C /opt/env/rm -rf /opt/env/jdk-8u60-linux-x64.tar.gzmv /opt/env/jdk1.8.0_60 /opt/env/javaecho "export JAVA_HOME=/opt/env/java" >> /etc/profile# 安装Scalawget -P /opt/env/ http://downloads.typesafe.com/scala/2.10.6/scala-2.10.6.tgztar -xzf /opt/env/scala-2.10.6.tgz -C /opt/env/rm -rf /opt/env/scala-2.10.6.tgzmv /opt/env/scala-2.10.6 /opt/env/scalaecho "export SCALA_HOME=/opt/env/scala" >> /etc/profileecho 'export PATH=$PATH:$JAVA_HOME/bin:$SCALA_HOME/bin' >> /etc/profilesource /etc/profile# 安装MySQLyum install -y mysql-server mysql mysql-develservice mysqld start# mysqladmin -u root password 123456mysql -u root -pgrant all on *.* to'root'@'%' identified by '123456';flush privileges;# 安装Mongovi /etc/yum.repos.d/mongodb-org-3.2.repo  [mongodb-org-3.2]  name=MongoDB Repository  baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/  gpgcheck=1  enabled=1  gpgkey=https://www.mongodb.org/static/pgp/server-3.2.ascyum install -y mongodb-orgvi /etc/mongod.conf  bind_ip = 0.0.0.0service mongod start
  • 文件夹共享

vi /etc/selinux/config   SELLINUX=disabledyum install -y sambavi /etc/samba/smb.conf    # 开启匿名访问    security = share    # 修改访问目录    [public]    comment = Public Stuff    path = /share    availabe = yes    browseable = yes    public = yes    writable = yes    printable = no    write list = +staffmkdir /sharechmod 777 /share/etc/init.d/smb start

3. 基本环境创建

SSH到实验环境

# 创建用户user,密码123456adduser userpasswd usermkdir -p /opt/workspaces/chown user: /opt/workspaces/# 进入user账号su - user# 切换到工作空间cd /opt/workspaces# 创建各框架lib目录mkdir frameworks# 创建各框架数据目录mkdir data# 创建各框架日志目录mkdir logs# 创建应用包目录mkdir apps# 创建SSH免密钥登录ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsacat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keyschmod 0600 ~/.ssh/authorized_keys

如无特殊说明后续操作都使用user账号

"如何使用Docker创建环境"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

0