zoukankan      html  css  js  c++  java
  • 基于【 Docker】四 || Docker常用镜像安装

    一、nginx安装

    1、拉取镜像:docker pull nginx

    2、启动容器:docker run -d -p 80:80 nginx

    3、查看nginx:ps aux | grep 'nginx'

    4、访问nginx:curl 127.0.0.1

    二、配置nginx.conf文件

    1、通过在容器中配置

    进入nginx容器中:

    docker container exec -it f0b1c8ab3633 /bin/bash

    退出:exit

    配置文件位置:cd  /etc/nginx/nginx.conf

    vi nginx.conf会报错,因为是容器是轻量级的,默认不支持vi等插件,需要自己安装vi等插件(不建议在容器中修改配置文件)

    2、通过挂载的方式:

    容器挂载外部配置文件 ,命令 -v

    使用挂载的方式,外部的配置文件覆盖内部容器配置文件

    创建挂载目录(-p 递归创建):mkdir -p /data/nginx/{conf,conf.d,html,logs}

    把nginx.conf文件上传到 conf目录下

    docker run --name mynginx -d -p 80:80  -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf  -v /data/nginx/logs:/var/log/nginx -d docker.io/nginx

    启动容器后,查看容器内配置文件,容器内配置文件已经和外部配置文件一致了

    二、mysql安装

    1、拉取镜像文件

    docker pull mysql:5.7

    2、创建一个容器

    docker create --name mysql -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 mysql:5.7

    3、启动容器

    docker start mysql

    4、进入到容器

    docker exec -it mysql bash

    5、连接mysql

    mysql -uroot -p

    6、配置文件位置

    cd /etc/mysql/mysql.cnf

    7、运行容器(完整)

    docker run -p 3306:3306 --name mysql8 --restart always --privileged=true  -v /docker/mysql/conf:/etc/mysql/conf.d -v /docker/mysql/conf/my.cnf:/etc/mysql/my.cnf  -v  /docker/mysql/logs:/logs -v /docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:8.0.18

    8、my.cnf配置文件

    [client]
    default-character-set=utf8mb4
     
    [mysql]
    default-character-set=utf8mb4
     
    [mysqld]
    pid-file        = /var/run/mysqld/mysqld.pid
    socket          = /var/run/mysqld/mysqld.sock
    datadir         = /var/lib/mysql
    secure-file-priv= NULL
    # Disabling symbolic-links is recommended to prevent assorted security risks
    symbolic-links=0
    max_connections=10000
    default-time_zone='+8:00'
    character-set-client-handshake=FALSE
    character_set_server=utf8mb4
    collation-server=utf8mb4_unicode_ci
    init_connect='SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci'
    # Custom config should go here
    !includedir /etc/mysql/conf.d/
    

      

    三、redis安装

    docker run -p 6379:6379 -v /data/redis:/data  -d redis:3.2 redis-server  --requirepass "root" --appendonly yes

    四、mongodb安装

    1、运行容器

    docker run -itd --name mongo -p 27017:27017 -v /docker/mongodb/data:/data/db  mongo --auth
    

    2、进入容器,添加用户和密码

    docker exec -it mongo mongo admin
    
    # 创建一个名为 admin,密码为 admin 的用户
    db.createUser({ user:'admin',pwd:'admin',roles:[ { role:'userAdminAnyDatabase', db: 'admin'}]});
    
    # 尝试使用上面创建的用户信息进行连接
    db.auth('admin', 'admin')

    # 退出
    exit;

    3、管理员已经创建成功后,我们需要重新连接mongo数据库,用管理员进行登录,并为目标数据库创建目标用户,先退出容器,从新进入容器

    docker exec -it mongo mongo admin

    # 授权admin登录
    db.auth("admin", "admin");

    4、创建访问指定数据库的用户

    假设我们为 theme_commons 库创建一个用户,用户名为 kevin,密码为 kevin

    use theme_commons;
    
    db.createUser({ user: 'kevin', pwd:'kevin', roles: [ {role:"readWrite",db:"theme_commons"}]});

    db.auth("kevin","kevin");

    # 创建成功并退出
    exit;

      

     

  • 相关阅读:
    spring mvc注解文件上传下载
    html,图片上传预览,input file获取文件等相关操作
    three.js、webGL、canvas区别于关联
    html添加新元素兼容和访问
    关于HTML,css3自适应屏幕,自适应宽度
    数据库设计的规则 入门
    mysql 索引入门
    一 .linux上安装 python git redis nginx
    一 .git和github
    一 .Django+Alipay(支付宝支付使用)和微信支付
  • 原文地址:https://www.cnblogs.com/kevin-ying/p/11108216.html
Copyright © 2011-2022 走看看