同步操作将从 1264644959/blog 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
参考文档
基于GO语言开发
打包应用及应用的依赖到一个可移植的容器上
将应用程序和其依赖打包在一个文件里面,运行生成虚拟容器,程序在虚拟容器里面运行
提供一次性的环境
提供弹性的云服务
实践微服务框架
容器是不值得保留的,数据是非常重要的
https://www.runoob.com/docker/ubuntu-docker-install.html
centos安装docker记录
如何查看centos的发行版本?
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
没有启动 docker 服务
service docker start
docker主机和容器之间复制文件
uname -r 查看自己操作系统的内核版本
linux 启动 docker服务 service docker start/stop/reload/status
netstat -ntlp 查看网络端口的使用状况
redis-cli shutdown 停止掉Redis服务
sftp传文件
sftp root@39.107.46.92
查看信息和版本
docker version
docker info
查看所有镜像文件
docker images
删除镜像
docker rmi 镜像ID
通过镜像文件创建并运行容器
docker container run --name mycontainer hello-world
删除容器
docker container rm mycontainer
docker pull nginx:latest 拉取镜像文件从云服务器中
docker run -d -p 80:80 --name zylnginx nginx + --rm 容器停止后自动自己
docker ps 查看运行中的容器
docker stop zylnginx 停止正在运行的容器
docker container ls -a 查看所有的容器
docker start zylnginx 启动容器
docker rm -f zylnginx 删除容器
docker exec -it zylnginx /bin/bash
exit 退出
把外部文件部署到容器中
docker run -d -p 80:80 -v /root/html:/usr/share/nginx/html --name mynginx nginx #数据卷操作
docker pull redis
pkill redis 杀死原来存在的redis进程
docker run -d -p 6379:6379 --name zylredis-master redis
改端口/指定口令/持久化方式
docker run -d -p 6379:6379 --name zylredis redis redis-server --requirepass 199802 --port 6379 --appendonly yes
主从热备
读写分离
主库写,从库读
查看容器IP地址
docker inspect --format '{{ .NetworkSettings.IPAddress }}' 82ce64b0e7bf
容器之间可以通过IP进行互通,也可以使用网络别名
创建从库-进行互联
docker run -d -p 6380:6379 --link zylredis-master:zylredis-master --name redis-slave-1 redis redis-server --slaveof zylredis-master 6379 --masterauth 199802
docker run -d -p 6381:6379 --link zylredis-master:zylredis-master --name redis-slave-2 redis redis-server --slaveof zylredis-master 6379 --masterauth 199802
redis查看从库
info replication
flush db 清除 Redis 缓存
需要设置口令才能连接数据库
需要把主机的mysql服务停掉
docker run -d -p 3306:3306 --name zylmysql -e "MYSQL_ROOT_PASSWORD=123" mysql:5.7.29
mysql -u root -p 连接数据库
select version() 查看数据库版本
测试,建立测试数据库文件夹
mkdir -p docker/mysql/{conf,data}
保留数据 数据卷操作 映射数据和数据库配置
docker run -d -p 3306:3306 -v /root/docker/mysql/conf:/etc/mysql/mysql.conf.d -v /root/docker/mysql/data:/var/lib/mysql --name zylmysql -e "MYSQL_ROOT_PASSWORD=123456" mysql:5.7.29
第一种
docker commit 1be9408ed6b9 zyl/zylmysql
docker run -d -p 3306:3306 --name zylmysql zyl/zylmysql
打包
docker save zyl/zylmysql -o mysql.tar
加载
docker load -i mysql.tar
第二种,将镜像上传服务器
登录
docker login
上传镜像
docker push zyl/zylmysql
第三种 dockerfile 构建镜像
Flask
from flask import Flask
from flask_restful import Resource, Api
from flask_cors import CORS
app = Flask(__name__)
CORS(app, resources={r'/api/*':{'origins': '*'}})
api = Api(app)
class Product(Resource):
def get(self):
products = ['Ice Cream', 'Chocolate', 'Coca Cola', 'hamburger']
return {'products': products}
api.add_resource(Product, '/api/products')
把依赖项整理出来
https://blog.csdn.net/weixin_44038167/article/details/102968480
flask
flask-restful
flask-cors
gunicorn
服务器启动项文件
start.sh
#!/bin/bash
exec gunicorn -w 4 -b 0.0.0.0:8002 app:app
构建镜像
在 shell 中写代码时空格键和制表符千万不要混用
touch Dockerfile
#指定基础镜像
FROM python:3.7
#指定镜像维护者
MAINTAINER zyl "zylandstt@qq.com"
#把文件添加到容器中指定的位置
ADD api/* /root/api/
#设置工作目录
WORKDIR /root/api
#安装依赖
RUN pip install -r requirements.txt -i https://pypi.doubanio.com/simple/
#容器启动执行的命令
ENTRYPOINT ["./start.sh"]
#端口
EXPOSE 8002
创建镜像
docker build -t "zyl/myapp" .
运行容器
docker run -d -p 8002:8002 --name myapp zyl/myapp
查看日志
https://www.cnblogs.com/mr-wuxiansheng/p/11412489.html
docker logs --since 30m
Kubernetes(K8S)
docker logs -f -t --tail 20 zylmysql
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。