谷粒商城学习日记(1)—— docker容器的安装和使用

首先要保证使用的是liunx环境,系统我使用的是centos 7

centos 7安装docker

1.可以进入docker的官网查看文档,里面有完整的安装教程
docker官网地址

2.依次执行命令

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
sudo yum install -y yum-utils
sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io

启动docker

sudo systemctl start docker

3.设置docker开机自启

sudo systemctl enable docker

docker 就已经安装完成了,可以使用docker-v命令测试docker是否正常

使用阿里云镜像

1.进入阿里云官网,登录并找到容器镜像服务

阿里云官网

2.找到容器镜像服务

3.执行下列代码

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://x0na70ru.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

这样docker就已经配置好阿里云镜像了

安装mysql并使用

docker安装完成之后,我们先安装一个mysql的镜像
可以去docker的镜像仓库找到mysql的镜像名称
docker镜像仓库
现在访问只能通过挂vpn的方式
也可以使用国内的镜像仓库,这里不多做解释。感兴趣的可以网上查阅
1.拉取docker mysql的镜像

docker pull mysql:5.7

2.运行mysql镜像

docker run -p 3306:3306 --name mysql \
-v /myfile/mydata/mysql/log:/var/log/mysql \
-v /myfile/mydata/mysql/data:/var/lib/mysql \
-v /myfile/mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7

参数解析
-p 3306:3306
指的是讲docker镜像的3306端口映射到liunx机器的3306端口

-v /myfile/mydata/mysql/log:/var/log/mysql
指的是将内部容器的/var/log/mysql的目录映射到liunx的/myfile/mydata/mysql/log目录没有就创建

-e MYSQL_ROOT_PASSWORD=root
初始化mysql的密码

mysql还要配置远程连接

docker exec -it mysql bash

root@yl-web yl]# mysql -u root
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.6.26 MySQL Community Server (GPL)

Copyright © 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.

mysql> show databases;
±-------------------+
| Database |
±-------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
±-------------------+
4 rows in set (0.01 sec)
mysql>

设置密码
mysql> set password for ‘root’@‘localhost’ =password(‘password’);
Query OK, 0 rows affected (0.00 sec)
mysql>
远程连接设置
把在所有数据库的所有表的所有权限赋值给位于所有IP地址的root用户。

mysql> grant all privileges on . to root@’%'identified by ‘password’;
如果是新用户而不是root,则要先新建用户

mysql>create user ‘username’@’%’ identified by ‘password’;
可以参考 https://www.cnblogs.com/starof/p/4680083.html

注意:mysql的服务器端口防火墙一定要开启,tomcat的端口也要开启。否则无法访问

设置mysql的配置文件

cd /myfile/mydata/mysql/conf
vi my.cnf

输入i插入模式,复制以下内容

  [mysqld]
    character-set-server=utf8
    collation-server=utf8_general_ci
    sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'

    [client]
    default-character-set=utf8

    [mysql]
    default-character-set=utf8

保存退出,重启docker mysql

docker restart mysql

猜你喜欢

转载自blog.csdn.net/menxinziwen/article/details/113921323