zoukankan      html  css  js  c++  java
  • 使用Dockerfile构建docker lnmp环境

    一、mysql

     1、创建 Dockerfile

    mkdir mysql # 创建一个目录存放之后的Dockerfile,目录名无所谓
    cd mysql # 进入目录
    vi Dockerfile # 创建Dockerfile(文件名可以修改)
    

      将如下内容填入 Dockerfile中

    FROM docker.io/centos
    MAINTAINER rslai "netlrs@163.com"
    
    ADD run.sh /etc/service/run.sh
    
    RUN yum install -y net-tools openssh-server openssh-clients sudo 
            && ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key 
            && ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key 
            && yum install -y http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm 
            && yum install -y mysql-server mysql mysql-devel 
            && touch /etc/sysconfig/network 
            && /etc/init.d/mysqld start 
            && mysql -e "grant all privileges on *.* to 'root'@'%' identified by '123456';" 
            && mysql -e "grant all privileges on *.* to 'root'@'localhost' identified by '123456';" 
            && mysql -u root -p123456 -e "show databases;" 
            && yum clean all 
            && chmod +x /etc/service/run.sh
    
    EXPOSE 22
    EXPOSE 3306
    
    
    CMD ["sh", "/etc/service/run.sh"]
    

     2、创建run.sh

      在本地mysql文件中创建run.sh

    vi run.sh
    

      将如下内容填入

    /usr/sbin/sshd -D &
    /usr/bin/mysqld_safe
    

    3、创建image文件

    docker build -t centos:mysql -f /root/mysql/Dockerfile /root/mysql
    #                 库    tag         dokerfile文件      dokerfile目录
    

    4、创建容器

    docker run -itd --net=none --name=test004 centos:mysql
    #               不配置网络    容器名称      image TAG 
    

    5、给容器指定ip地址

    pipework enp2s0 test004 192.168.2.234/24@192.168.2.1
    #        网卡名 容器名     ip地址           网关
    

    6、进入容器查看配置情况

    docker exec -it test004  /bin/bash # 进入容器
    netstat -nap # 查看网络端口
    ps -ef # 查看进程
    

      

    参考文档:

      https://qiita.com/maemori/items/7a67fe4d79443776ea41

  • 相关阅读:
    今天没有去上班
    [转]分析ASP.NET读取XML文件4种方法
    Div+CSS布局入门教程
    net 怎么调用迅雷
    类图(Class Diagram)
    asp.net删除文件夹后引起Session丢失的解决办法[转]
    对象图(Object Diagram)
    C#使用Strings.StrConv进行简繁体转换
    ASP.NET使用Memcached高缓存实例(入门级)[转]
    类似豆丁网、百度文库的开源文档播放器源码下载[转]
  • 原文地址:https://www.cnblogs.com/rslai/p/9077042.html
Copyright © 2011-2022 走看看