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}"
相关推荐
林鸿风采3 分钟前
内网服务器之间传输单个大文件最佳解决方案
linux·python·文件传输
belldeep13 分钟前
WSL 安装 Debian 12 后,Linux 如何安装 redis ?
linux·redis·debian
煤灰24215 分钟前
Linux上的网络编程-初探
linux·网络
马志远的生信笔记33 分钟前
质控脚本来喽
linux·数据分析
在下千玦1 小时前
#在 CentOS 7 中手动编译安装软件操作及原理
linux
Penguido2 小时前
基于 Nexus 在 Dockerfile 配置 yum, conda, pip 仓库的方法和参考
linux·docker·centos·conda·pip
Fireworkitte2 小时前
企业级常用的 CentOS版本
linux·运维·centos
liulilittle3 小时前
MAC-OS X 命令行设置IP、掩码、网关、DNS服务器地址
linux·网络·macos
星寂樱易李3 小时前
Ubuntu 18.04 iso文件下载
linux·运维·ubuntu
羑悻的小杀马特4 小时前
【Linux篇章】Linux 进程信号2:解锁系统高效运作的 “隐藏指令”,开启性能飞跃新征程(精讲捕捉信号及OS运行机制)
linux·运维·服务器·学习·os·进程信号