版本 msyql:latest 获取镜像 docker pull mysql
1.配置运行MySQL镜像
查看已拉取的镜像: docker images
sudo docker run -p 3379:3306\
--name se-mysql \
-v $PWD/conf:/etc/mysql/conf.d \
-v $PWD/logs:/logs \
-v $PWD/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:latest
2.进入MySQL容器:
docker exec -it se-mysql bash ( se-mysql 是容器名)
3.登录MySQL(前提是能进入到mysql容器里)
mysql -u root -proot
mysql>
mysql> grant all PRIVILEGES on *.* to root@'%' WITH GRANT OPTION;
Query OK, 0 rows affected (0.01 sec)
mysql> ALTER user 'root'@'%' IDENTIFIED BY 'root' PASSWORD EXPIRE NEVER;
Query OK, 0 rows affected (0.01 sec)
mysql> ALTER user 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
Query OK, 0 rows affected (0.02 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.01 sec)
操作都能完成就可以
FLUSH PRIVILEGES;
4.刷新权限
想要访问mysql数据库,我的机器上需要装一个mysql-client。
sudo apt-get install mysql-client-core-5.6
5.docker 中mysql的使用
1. docker内mysql无法输入中文:
只要这样进入容器即可输入中文: docker exec -it se-mysql env LANG=C.UTF-8 /bin/bash
docker 中redis的安装并使用
获取镜像 /usr/local/docker_redis
1. docker pull redis
2.在/usr/local/ 目录下创建docker_redis文件目录,然后从官网上下载redis.conf文件,并将之上传至创建好的docker_redis文件下。
docker run -p 6379:6379 --name myredis -v /usr/local/docker_redis/redis.conf:/etc/redis/redis.conf -v /usr/local/docker_redis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes --requirepass 1234
docker run -d --privileged=true -p 56379:6379 -v /docker/redis/conf/redis.conf:/etc/redis/redis.conf -v /docker/redis/data:/data --name redis_56370 redis redis-server /etc/redis/redis.conf --appendonly yes --requirepass 1234
docker安装redis并配置外部访问
-
下载最新镜像
docker pull redis:latest -
从官网下载redis配置文件(默认位置/root/redis.conf)
wget http://download.redis.io/redis-stable/redis.conf -
创建容器
docker run -d --privileged=true -p 56379:6379 -v /usr/local/docker_redis/redis.conf:/etc/redis/redis.conf -v /usr/local/docker_redis/datas:/datas --name redis_56379 redis redis-server /etc/redis/redis.conf --appendonly yes --requirepass 1234
外部就能成功访问