1 容器操作
| |
| docker start 容器id |
| |
| docker stop 容器id |
| |
| |
| |
| docker cp 容器名称:容器目录 需要拷贝的文件或目录 |
| docker cp 20fd8:/home/lqz.txt /home/lqz.txt |
| |
| docker cp 需要拷贝的文件或目录 容器名称:容器目录 |
| docker cp ./lqz.txt 20fd894a3f20:/home/lqz.txt |
| |
| |
| docker inspect 容器名称 |
| docker inspect --format='{{.NetworkSettings.IPAddress}}' 容器名称(容器ID) |
| |
| |
| |
| |
| |
| |
| |
| |
| docker rm 容器id |
| docker rm `docker ps -a -q` |
| |
| |
| |
| |
| -myslq reids |
| -uwsgi+django |
2 应用部署
2.1 mysql 部署
| docker run -di --name=mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7 |
| |
| |
| |
| mkdir /home/mysql |
| mkdir /home/mysql/conf.d |
| mkdir /home/mysql/data/ |
| vim /home/mysql/my.cnf |
| [client] |
| default-character-set=utf8 |
| [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 /home/mysql/data/:/var/lib/mysql -v /home/mysql/conf.d:/etc/mysql/conf.d -v /home/mysql/my.cnf:/etc/mysql/my.cnf -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7 |
| |
| |
| |
| |
| |
| |
| |
| |
| |
2.2 redis
| |
| docker pull redis |
| mkdir /root/data |
| vim /root/redis.conf |
| |
| bind 0.0.0.0 |
| daemonize NO |
| protected-mode no |
| requirepass 123456 |
| |
| |
| |
| |
| docker run -id -p 6379:6379 --name redis -v /root/redis.conf:/etc/redis/redis.conf -v /root/data:/data redis redis-server /etc/redis/redis.conf |
| |
| |
| |
| |
| |
2.3 nginx
| |
| docker pull nginx |
| |
| |
| |
| |
| |
| docker run -id --name nginx -p 80:80 -v /root/html:/usr/share/nginx/html nginx |
| |
3 迁移与备份
| |
| -运行一个centos容器 |
| docker run -id --name centos_vim centos:7 |
| -在容器中装vim |
| docker exec -it a6e240 /bin/bash |
| yum install vim -y |
| |
| -把容器做成镜像(centos+vim) |
| docker commit centos_vim centos_vim_image |
| |
| -把centos_vim 容器删除 |
| docker rm centos_vim |
| -基于新构建的镜像,运行成容器 |
| docker run -id --name centos_vim centos_vim_image:latest |
| -进入到容器中,查看,软件都在 |
| docker exec -it id号 /bin/bash |
| |
| |
| docker save -o centos_vim_image.tar centos_vim_image |
| -删除容器,删除镜像 |
| -把备份的镜像恢复 |
| docker load -i centos_vim_image.tar |
4 Dockerfile
| |
| 1 远程仓库拉取的 docker pull |
| 2 用容器做成的镜像 docker commit |
| 3 把备份的恢复 docker load |
| 4 使用Dockerfile来构建 |
| |
| Dockerfile是由一系列命令和参数构成的脚本文件,这些命令应用于基础镜像并最终创建一个新的镜像 |
| |
| |
| FROM 基础镜像 |
| MAINTAINER lqz |
| ENV key value |
| RUN command |
| ADD source_dir/file dest_dir/file |
| COPY source_dir/file dest_dir/file |
| WORKDIR lqz |
| |
| |
| |
| |
| vim Dockerfile |
| |
| FROM centos:7 |
| MAINTAINER lqz |
| ENV name lqz |
| RUN yum install vim -y |
| RUN mkdir /lqz |
| RUN touch /lqz/ss.py |
| RUN echo 'print(1)' >/lqz/ss.py |
| COPY /root/redis.conf /lqz/redis.conf |
| WORKDIR /lqz |
| |
| |
| |
| docker build -t='centos_lqz_vim' . |
| |
| |
| docker run -id --name xx centos_lqz_vim |
| |
| docker exec -it xx /bin/bash |
| |
| |
| 使用Dockerfile构建一个运行django程序的镜像 |
| |
| django 的helloworld --》压缩包 |
| |
| 基于Python3.8 构建一个能够运行你这个程序的镜像 |
| FROM python:3.8 |
| MAINTAINER lqz |
| RUN pip install django==3.2.2 |
| ADD 压缩包 |
| WORKDIR /lqz |
| |
| docker run -id -p 8080:8080 --name xx djago python manage.py runserver 0.0.0.0:8080 |
| |
| |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?