curl上传文件到minio服务器

匿名用户上传

bash 复制代码
#!/bin/bash

bucket=mybucket
file=/home/database.yml

host=192.168.24.9:9000

resource="/${bucket}/${file}"
content_type="application/octet-stream"
date=`date -R`

echo $resource
echo "http://$host${resource}"

curl -v -X PUT -T "${file}" \
          -H "Host: $host" \
          -H "Date: ${date}" \
          -H "Content-Type: ${content_type}" \
          http://$host${resource}

使用账号密码上传

bash 复制代码
#!/bin/bash

ACCESS_KEY="minioadmin"
SECRET_KEY="minioadmin"
BUCKET_NAME="mybucket"
FILE_NAME="/home/database.yml"
OBJECT_NAME="database.yml"
MINIO_URL="192.168.24.9:9000"

# 生成日期和签名
DATE_VALUE="$(date -R)"
SIGNATURE="$(echo -en "PUT\n\n\n${DATE_VALUE}\n/${BUCKET_NAME}/${OBJECT_NAME}" | openssl sha1 -hmac "${SECRET_KEY}" -binary | base64)"

curl -i -X PUT --upload-file "${FILE_NAME}" \
     --header "Date: ${DATE_VALUE}" \
     --header "Authorization: AWS ${ACCESS_KEY}:${SIGNATURE}" \
     "${MINIO_URL}/${BUCKET_NAME}/${OBJECT_NAME}"
相关推荐
小成2023032026510 小时前
Linux高级02
linux·开发语言
mounter62510 小时前
【硬核前沿】CXL 深度解析:重塑数据中心架构的“高速公路”,Linux 内核如何应对挑战?-- CXL 协议详解与 LSF/MM 最新动态
linux·服务器·网络·架构·kernel
++==10 小时前
Linux 进程间通信与线程同步技术详解:IPC 机制、线程 API、同步工具与经典同步问题
linux
特长腿特长10 小时前
centos、ubantu系列机的用户和用户组的结构是什么?具体怎么配置?用户组权限怎么使用?这篇文章持续更新,帮助你复习linux的基础知识
linux·运维·centos
zzzyyy53810 小时前
Linux环境变量
linux·运维·服务器
pluvium2710 小时前
记对 xonsh shell 的使用, 脚本编写, 迁移及调优
linux·python·shell·xonsh
无级程序员11 小时前
centos7 安装 llvm-toolset-7-clang出错的问题解决
linux·centos
CHHC188011 小时前
NetCore树莓派桌面应用程序
linux·运维·服务器
云栖梦泽13 小时前
Linux内核与驱动:9.Linux 驱动 API 封装
linux·c++
si莉亚14 小时前
ROS2安装EVO工具包
linux·开发语言·c++·开源