Saya mahu menggunakan versi Dockerfile pada EC2(fargate).
Saya mendapat ralat berikut dalam cloudwatch.
"Gagal membuat kumpulan.: Ralat (Tiada)"
Saya telah mencari penyelesaian untuk masalah ini.
Saya menukar kaedah daripada build
更改为 build_unchecked
semasa membuat sambungan.
Walau bagaimanapun, saya mendapat ralat berikut dan tidak dapat menyusun.
error[E0277]: the trait bound `FieldAttr: ToTokens` is not satisfied --> /usr/local/cargo/registry/src/github.com-1ecc6299db9ec823/diesel_derives-2.0.1/src/attrs.rs:143:18 | 143 | impl Spanned for FieldAttr { | ^^^^^^^^^ the trait `ToTokens` is not implemented for `FieldAttr` | = help: the following other types implement trait `ToTokens`: &'a T &'a mut T Abi Abstract AndAnd AndEq AngleBracketedGenericArguments Arm and 312 others = note: required for `FieldAttr` to implement `quote::spanned::private::Sealed` note: required by a bound in `quote::spanned::Spanned` --> /usr/local/cargo/registry/src/github.com-1ecc6299db9ec823/quote-1.0.25/src/spanned.rs:6:20 | 6 | pub trait Spanned: private::Sealed { | ^^^^^^^^^^^^^^^ required by this bound in `Spanned` error[E0277]: the trait bound `StructAttr: ToTokens` is not satisfied --> /usr/local/cargo/registry/src/github.com-1ecc6299db9ec823/diesel_derives-2.0.1/src/attrs.rs:242:18 | 242 | impl Spanned for StructAttr { | ^^^^^^^^^^ the trait `ToTokens` is not implemented for `StructAttr` | = help: the following other types implement trait `ToTokens`: &'a T &'a mut T Abi Abstract AndAnd AndEq AngleBracketedGenericArguments Arm and 312 others = note: required for `StructAttr` to implement `quote::spanned::private::Sealed` note: required by a bound in `quote::spanned::Spanned` --> /usr/local/cargo/registry/src/github.com-1ecc6299db9ec823/quote-1.0.25/src/spanned.rs:6:20 | 6 | pub trait Spanned: private::Sealed { | ^^^^^^^^^^^^^^^ required by this bound in `Spanned` For more information about this error, try `rustc --explain E0277`. error: could not compile `diesel_derives` due to 2 previous errors warning: build failed, waiting for other jobs to finish... error: failed to compile `practice-rust v0.1.0 (/usr/src/practice-rust)`, intermediate artifacts can be found at `/usr/src/practice-rust/target`
pub type Pool = r2d2::Pool<ConnectionManager<MysqlConnection>>; pub fn establish_connection() -> Pool { dotenv().ok(); std::env::set_var("RUST_LOG", "actix_web=debug"); let database_url = std::env::var("DATABASE_URL").expect("DATABASE_URL must be set"); let manager = ConnectionManager::<MysqlConnection>::new(database_url); let pool: Pool = r2d2::Pool::builder().build_unchecked(manager); pool }
#[actix_web::main] async fn main() -> std::io::Result<()> { let pool = db::establish_connection(); HttpServer::new(move|| { App::new() .app_data(Data::new(pool.clone())) .service(todo_index) }) .bind("0.0.0.0:8080")? .run() .await }
#[get("/api/todo")] async fn todo_index(db: web::Data<db::Pool>) -> impl Responder { let mut conn = db.get().unwrap(); let todo = schema::todos::table .load::<model::Todo>(&mut conn) .expect("Error not showing todo list"); HttpResponse::Ok().json(todo) }
Saya cuba lulus melalui rujukan tetapi tidak berjaya.
Bina fail Docker lain tanpa pengubahsuaian. Masalahnya adalah dalam Dockerfile.
dev: Pembinaan selesai.
FROM rust:1-slim-buster RUN apt-get update \ && apt-get install -y default-libmysqlclient-dev mariadb-client WORKDIR /usr/src/myapp/practice-rust COPY . .
stg: Tidak dapat membina.
FROM rust:1-slim-buster as builder RUN apt-get update \ && apt-get install -y --no-install-recommends \ default-libmysqlclient-dev mariadb-client \ && apt-get -y clean \ && rm -rf /var/lib/apt/lists/* WORKDIR /usr/src/practice-rust COPY . . RUN cargo install --path . FROM debian:10.13-slim as stage RUN apt-get update \ && apt-get install -y --no-install-recommends \ default-libmysqlclient-dev mariadb-client \ && apt-get -y clean \ && rm -rf /var/lib/apt/lists/* COPY --from=builder /usr/local/cargo/bin/practice-rust /usr/local/bin/practice-rust CMD [ "practice-rust"]
Hei, saya baru sahaja mengalami ralat yang sama dengan mengemas kini kebergantungan ini:
https://github.com/nxthat/nanocl/commit/6b7b19d7ff50d9392b1e56ec1ad67c34ea63 c632
Mungkin anda boleh membetulkannya dengan cepat dengan menurunkan taraf beberapa kebergantungan?
Saya pun nak tahu apa masalahnya
Saya rasa ini berlaku kerana perubahan besar dalam "rujukan" Pautan soalan