今日内容概要
- 服务部署
- 迁移与备份
- dockerfile
- 私有仓库
内容详细
1、服务部署
动
-如果本地没有这个镜像---》运行镜像---》会先拉取--》然后在运行
docker pull redis
-容器中的redis运行时候,有配置文件,用我写的配置文件,-v 映射 (宿主机写个配置文件,让容器中的redis用)
-redis运行产生数据--》放在容器中--》容器删除数据就没了---》数据映射到宿主机-->以后删了容器,数据还在---》只要再启动起一个容器---》做好目录映射,数据自然都在了
docker run -di --name=myredis -p 6379:6379 redis
docker run -id -p 6379:6379 --name redis_6379 -v /root/s20/redis.conf:/etc/redis/redis.conf -v /root/s20/data:/data redis redis-server /etc/redis/redis.conf
docker logs 容器名字
-存入数据
bgsave
docker rm id号
docker run -id -p 6379:6379 --name redis_6379 -v /root/s20/redis.conf:/etc/redis/redis.conf -v /root/s20/data:/data redis redis-server /etc/redis/redis.conf
docker pull mysql:5.7
docker run -di --name=mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
grant all privileges on *.* to 'root'@'%' identified by 'Lqz12345?';
[mysqld]
user=mysql
character-set-server=utf8
default_authentication_plugin=mysql_native_password
secure_file_priv=/var/lib/mysql
expire_logs_days=7
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
max_connections=1000
docker run -di -v /root/s20/mysql/data/:/var/lib/mysql -v /root/s20/mysql/conf.d:/etc/mysql/conf.d -v /root/s20/mysql/my.cnf:/etc/mysql/my.cnf -p 3306:3306 --name mysql5.7 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
docker pull nginx
docker run -di --name=mynginx -p 80:80 nginx
2、迁移与备份
docker commit 容器名字 镜像名字
docker commit django django2.2.2
docker save -o django2.2.2.tar django2.2.2
docker load -i django2.2.2.tar
3、dockerfile 应用
FROM image_name:tag
MAINTAINER user_name
ENV key value
RUN command
ADD source_dir/file dest_dir/file
source_dir/file dest_dir/file
WORKDIR path_dir
FROM python:3.8.13
MAINTAINER lqz
ENV pwd 123
RUN pip install django==2.2.2 -i https://pypi.tuna.tsinghua.edu.cn/simple
RUN pip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple
RUN mkdir lqz
ADD ./redis.conf /home/redis.conf
WORKDIR /home
docker build -t='django2.2.2' .
4、私有仓库
https://www.cnblogs.com/liuqingzheng/p/16315254.html