diff --git a/ansible/templates/docker-compose.yml b/ansible/templates/docker-compose.yml
index c6e3d626a..b074d60fe 100644
--- a/ansible/templates/docker-compose.yml
+++ b/ansible/templates/docker-compose.yml
@@ -1,4 +1,4 @@
-version: '3.3'
+version: '2.2'
 
 services:
   lemmy:
@@ -38,7 +38,7 @@ services:
     restart: always
 
   pictrs:
-    image: asonix/pictrs:v0.2.5-r0
+    image: asonix/pictrs:v0.2.6-r1
     user: 991:991
     ports:
       - "127.0.0.1:8537:8080"
diff --git a/crates/apub/src/activities/send/community.rs b/crates/apub/src/activities/send/community.rs
index 3e77248f8..185f4b57f 100644
--- a/crates/apub/src/activities/send/community.rs
+++ b/crates/apub/src/activities/send/community.rs
@@ -4,6 +4,7 @@ use crate::{
   check_is_apub_id_valid,
   extensions::context::lemmy_context,
   fetcher::user::get_or_fetch_and_upsert_user,
+  insert_activity,
   ActorType,
 };
 use activitystreams::{
@@ -27,7 +28,7 @@ use lemmy_api_structs::blocking;
 use lemmy_db_queries::DbPool;
 use lemmy_db_schema::source::community::Community;
 use lemmy_db_views_actor::community_follower_view::CommunityFollowerView;
-use lemmy_utils::{location_info, LemmyError};
+use lemmy_utils::{location_info, settings::structs::Settings, LemmyError};
 use lemmy_websocket::LemmyContext;
 use url::Url;
 
@@ -164,11 +165,20 @@ impl ActorType for Community {
 
   /// Wraps an activity sent to the community in an announce, and then sends the announce to all
   /// community followers.
+  ///
+  /// If we are announcing a local activity, it hasn't been stored in the database yet, and we need
+  /// to do it here, so that it can be fetched by ID. Remote activities are inserted into DB in the
+  /// inbox.
   async fn send_announce(
     &self,
     activity: AnyBase,
     context: &LemmyContext,
   ) -> Result<(), LemmyError> {
+    let inner_id = activity.id().context(location_info!())?;
+    if inner_id.domain() == Some(&Settings::get().get_hostname_without_port()?) {
+      insert_activity(inner_id, activity.clone(), true, false, context.pool()).await?;
+    }
+
     let mut announce = Announce::new(self.actor_id.to_owned().into_inner(), activity);
     announce
       .set_many_contexts(lemmy_context()?)
diff --git a/docker/dev/docker-compose.yml b/docker/dev/docker-compose.yml
index a23f1e0ed..b8dcac91e 100644
--- a/docker/dev/docker-compose.yml
+++ b/docker/dev/docker-compose.yml
@@ -42,7 +42,7 @@ services:
     restart: always
 
   pictrs:
-    image: asonix/pictrs:v0.2.5-r0
+    image: asonix/pictrs:v0.2.6-r1
     ports: 
       - "8537:8080"
     user: 991:991
diff --git a/docker/federation/docker-compose.yml b/docker/federation/docker-compose.yml
index c40de9022..03355aa49 100644
--- a/docker/federation/docker-compose.yml
+++ b/docker/federation/docker-compose.yml
@@ -23,7 +23,7 @@ services:
 
   pictrs:
     restart: always
-    image: asonix/pictrs:v0.2.5-r0
+    image: asonix/pictrs:v0.2.6-r1
     user: 991:991
     volumes:
       - ./volumes/pictrs_alpha:/mnt
diff --git a/docker/prod/docker-compose.yml b/docker/prod/docker-compose.yml
index e219bdef8..a508269a5 100644
--- a/docker/prod/docker-compose.yml
+++ b/docker/prod/docker-compose.yml
@@ -38,7 +38,7 @@ services:
       - lemmy
 
   pictrs:
-    image: asonix/pictrs:v0.2.5-r0
+    image: asonix/pictrs:v0.2.6-r1
     ports: 
       - "127.0.0.1:8537:8080"
     user: 991:991